JAVA--类和对象4.1--构造方法基础

构造方法的类型

  • 默认构造方法(无参构造)
  • 例如:public Student( ){ } //参数列表为空
  • 自定义构造方法(带参构造)
  • 例如:public Student(String name,String gender,int age){ } //参数列表有参数(全参)
  • 构造方法的重载
构造方法的语法规则
  • 方法名必须与类名一致
  • 无返回类型(包括 void)
  • 支持访问修饰符(public、private 等)
构造方法的实际应用
  • 对象初始化时的属性赋值
  • 通过构造方法实现对象依赖注入
  • 链式构造方法调用(this())

Student类函数

java 复制代码
package com.oop.gouzao;

public class Student {

    //姓名年龄性别
    private String name;
    private String gender;
    private int age;

    //构造方法
    //空参构造方法
    public Student(){
        System.out.println("空参构造方法被调用");
    }

    public Student(String name,String gender,int age){
        System.out.println("有参构造函数被调用");

    }
}

TEST

java 复制代码
package com.oop.gouzao;

public class TEST {
    public static void main(String[] args) {

        Student s1 = new Student();
        Student s2 = new Student("王11","男",13);

    }
}

输出结果:

可以看到,先调用了空参构造方法,再调用了全参构造方法

注意:

1.构造方法并不是 类名.函数名()的调用方法,而是在对象实例化的时候自动调用

2.构造方法的调用,会自动匹配参数,如果在对象实例化的过程中,参数列表为空,则会自动调用无参构造函数。如果在实例化的过程中,参数列表有参,则会自动匹配对应有参的构造函数并进行调用。

3.习惯上,无论空参构造用不用的上,我们都要写。

相关推荐
Java后端的Ai之路18 分钟前
前端技术Vue-18-视图中的渲染
前端·javascript·vue.js
zttbee7 小时前
echarts图表tooltip色块失效
前端·javascript·echarts
凤凰院凶涛QAQ8 小时前
《Java版数据结构 & 集合类剖析》Map & Set & 反射:“从哈希碰撞到红黑树转换,反射帮你扒开 HashMap 的桶数组看个究竟”
java·数据结构·算法
H.莓飛8 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
wangchunyu1149 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
虚无境9 小时前
如何用AI帮我写出实用的插件
前端·javascript·ai编程
爱喝水的鱼丶10 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
w_zero_one10 小时前
算法--模拟
java·数据结构·算法
小灰灰搞电子10 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
外收内放10 小时前
面向对象高级(实战案例)
开发语言·python·学习