构造方法用于初始化对象,名称必须与类名相同,无返回类型,可重载;创建对象时自动调用,与普通方法在命名、返回值、调用方式等方面有明显区别。

在Java中,构造方法(Constructor)是一种特殊的方法,用于在创建对象时初始化对象的成员变量。它会在使用 new 关键字实例化对象时自动调用。
如何定义构造方法
构造方法的定义需要遵循以下规则:
- 构造方法名称必须与类名完全相同。
- 构造方法没有返回类型,连 void 也不能写。
- 构造方法可以有参数,也可以没有(即无参构造)。
- 构造方法可以重载,即一个类中可以有多个构造方法,只要参数列表不同。
示例代码:
public class Person {private String name;
private int age;
// 无参构造方法
public Person() {
this.name = "未知";
this.age = 0;
}
// 有参构造方法
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
创建对象时会自动调用对应构造方法:
立即学习“Java免费学习笔记(深入)”;
Person p2 = new Person("张三", 25); // 调用有参构造
构造方法与普通方法的区别
构造方法和普通方法在作用、语法和调用方式上有明显差异:
- 名称要求:构造方法必须与类名相同;普通方法可以是任意合法名称。
- 返回类型:构造方法没有返回类型;普通方法必须声明返回类型(包括 void)。
- 调用时机:构造方法在创建对象时由系统自动调用,不能手动调用;普通方法需要通过对象显式调用。
- 目的不同:构造方法用于初始化对象状态;普通方法用于定义对象的行为或功能。
- 是否可继承:构造方法不会被子类继承;普通方法可以被继承(除非是 private)。
- 是否可重写:构造方法不能被重写;普通方法可以被重写(override)。
注意:如果你没有在类中定义任何构造方法,Java会自动提供一个默认的无参构造方法。但一旦你定义了至少一个构造方法,这个默认构造就会消失,需要自己显式定义无参构造(如果还需要的话)。
基本上就这些。构造方法是对象初始化的关键环节,理解它和普通方法的区别有助于写出更清晰、安全的Java代码。










