构造方法的核心作用是为新创建的对象设置初始状态,确保对象在使用前具备合法、可用的数据和行为基础;它不负责内存分配,而是对JVM已分配的内存进行初始化,包括赋初值、校验参数、预加载资源等,并支持重载以适配不同初始化需求。
构造方法的核心作用是为新创建的对象设置初始状态,确保对象在使用前具备合法、可用的数据和行为基础。
当使用 new 关键字创建对象时,JVM 会自动调用对应的构造方法。它不是用来“生成”对象(内存分配由 JVM 完成),而是对已分配的内存空间进行初始化:给成员变量赋初值、执行必要逻辑(如资源预加载、状态校验等)。例如:
通过构造方法重载,可以按不同需求初始化对象。比如一个 Person 类可同时提供:
这种灵活性让对象创建更贴近实际使用场景,避免后续大量 setter 调用或出现“半初始化”状态。
它不仅是赋值工具,更是对象安全的第一道关卡。常见做法包括:
注意:this(...) 或 super(...) 必须是构造方法中的第一条语句。
构造方法不被继承,不能被重写,也不能被直接调用(只能通过 new 触发)。它的生命周期绑定于对象创建瞬间,执行完毕即结束,不会留下引用或返回值。而普通方法用于对象创建后的行为操作,可多次调用、可重写、有明确返回类型。