java中构造方法通过new关键字自动调用以初始化对象,名称须与类名一致、无返回类型、通常置于成员变量后;支持重载和this()调用;继承时父类构造方法必先执行,需显式super()若无默认无参构造。

Java 中类与对象使用构造方法,核心在于:**通过 new 关键字触发构造方法,完成对象的初始化**。它不是普通方法,不手动调用,也不返回值,而是对象诞生时自动执行的“出生仪式”。
构造方法怎么写?必须满足三个条件
一个合法的构造方法要同时符合:
-
名称必须和类名完全一致(大小写敏感),比如类叫
Car,构造方法就得叫Car -
不能写任何返回类型,连
void都不能加——这是最易错的地方 - 通常放在类内部、成员变量之后、普通方法之前,便于阅读和维护
对象创建时,构造方法怎么被调用?
只要写了 new 类名(...),JVM 就会按参数匹配规则,自动找对应构造方法执行:
-
new Person()→ 调用无参构造方法Person() { ... } -
new Person("李四", 28)→ 调用有参构造方法Person(String name, int age) { ... } - 如果类里只定义了带参构造方法,
new Person()就会编译失败——因为默认无参构造方法已被覆盖
一个类可以有多个构造方法吗?
可以,这叫构造方法重载,靠参数个数或类型区分:
- 常见组合:无参版(设默认值)、全参版(严格初始化)、精简版(如只传 ID)
- 可用
this(...)在一个构造方法里调用另一个,避免重复代码
例如:public Student(String name) { this(name, 0); } - 所有构造方法都必须确保
final字段被赋值,否则编译报错
继承中构造方法怎么协作?
子类创建对象时,父类构造方法一定会先执行:
- 默认自动调用父类无参构造方法
super() - 如果父类没有无参构造方法,子类构造方法第一行必须显式写
super(参数) -
super(...)或this(...)必须是构造方法的第一条语句
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











