企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
>[success] # java -- 构造方法 * **构造方法名**与**类名**完全**相同**并且**没有返回值类型**,连**void**都不许有(不能又return 带回返回的结果数据) * 使用`new`关键字创建对象时会自动调用构造方法实现成员`变量初始化`工作,整个过程创建对象的**由虚拟机调用,不能手动调用构造方法** * 每创建一次对象,就会调用一次构造方法 ~~~ class 类名 { 类名(形参列表) { 构造方法体; } } ~~~ * 没有定义**构造方法**时,编译器会自动添加一个**无参空构 造构造方法**,叫做**默认/缺省构造方法**,如果自定义了构造方法那么会**覆盖**原本的**默认构造函数**,构造函数也可以方法的**重载(无参和有参或者有参参数个数类型不同的构造方法)**(**如果没有定义构造方法,系统将给出一个默认的无参数构造方法。如果定义了构造方法,系统将不再提供默认的构造方法**) * 如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个无参数构造方法,为了防止产生不必要的错误**无论是否使用,都手工书写无参数构造方法** * **可以使用带参构造,为成员变量进行初始化** >[danger] ##### 案例 ~~~ public class Person { int age; String name; // 构造函数初始化 age 和 name Person(int a, String n) { age = a; name = n; } void printInfo() { System.out.println(age + "," + name); } // 入口 public static void main(String[] args) { Person person = new Person(10, "w"); person.printInfo(); // 10,w } } ~~~