前言
构造器又称为 构造函数 / 构造器 / constructor
[修饰符列表] 构造方法名(形式参数列表) {
构造方法体;
}
普通方法的语法结构:
[修饰符列表] 返回值类型 方法名(形式参数列表) {
方法体;
}
可以看到,构造方法里没有返回值类型!!
介绍
对于构造方法来说,构造方法的方法名必须和类名保持一致!
1 | public class test01 { |
作用
- 创建对象
- 给实例变量赋值
实例变量的内存空间是在构造方法执行过程当中完成开辟,完成初始化的。系统在默认赋值的时候,也是在构造方法执行过程当中完成的赋值。
调用方法
new 构造方法名(实参列表)
另,普通方法中,如果有 static
:类名.方法名(实参列表)
;没有static
:引用.方法名(实参列表)
返回值
每一个构造函数实际上执行结束之后都有返回值,但是这个“return 值;”不需要写;
构造方法结束时 Java 程序自动返回值,并且返回值类型是构造方法所在类的类型;
由于构造方法的返回值类型就是类本身,所以返回值类型不需要缩写
缺省构造器(无参数构造器)
缺省构造器——当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无参数的构造方法;
当一个类显示的将构造方法定义出来了,那么系统将不再默认为这个类提供缺省构造器,建议开发中手动的为当前类提供无参数构造方法,因为无参数构造方法太常用了。
1 | public class User { |
有参数的构造器
构造器支持方法重载机制,可以在一个类当中编写多个构造器方法
1 | // 创建对象 |
快速创建构造器:右键 --> Source --> Generate Constructor using Fields...
1 | // 无参数构造器 |