构造器
构造器
注意:构造器和方法是两码事,各是各的。
①构造器引入
当我们使用new关键字创建一个类的对象时,就是在使用这个类的构造器了:
如果我们没有明确声明构造器,那么系统回给类分配一个隐式的构造器。
②构造器的作用
- 作用1:创建对象。
- 作用2:在创建对象的过程中,对类进行初始化操作。这些操作写在构造器的大括号中。
- 初始化操作放到构造器里面,由构造器自动完成,程序员就不必在创建对象后还想着对这对象做初始化操作。
③构造器的组成部分
④构造器的参数
[1]有一个参数构造器例子
public class Soldier {
private String soldierName;
public Soldier(String soldierName) {
this.soldierName = soldierName;
}
}
注意:当类中声明了有参构造器之后,系统将不再给这个类分配无参的构造器。
[2]一个类可以有多个构造器
根据参数列表不同,多个构造器之间是重载关系。规则和方法重载一致:
- 要么参数个数不同
- 要么参数类型不同
public class Soldier {
private int age;
private String soldierName;
private String weapon;
private String gender;
public Soldier() {
}
public Soldier(int age) {
this.age = age;
}
public Soldier(String soldierName) {
this.soldierName = soldierName;
}
public Soldier(String soldierName, String weapon) {
this.soldierName = soldierName;
this.weapon = weapon;
}
public Soldier(String soldierName, String weapon, String gender) {
this.soldierName = soldierName;
this.weapon = weapon;
this.gender = gender;
}
public Soldier(int age, String soldierName, String weapon, String gender) {
this.gender = gender;
this.weapon = weapon;
this.soldierName = soldierName;
this.age = age;
}
}
⑤构造器相关语法规则
- Java语言中,每个类都至少有一个构造器
- 默认构造器的修饰符与所属类的修饰符一致
- 一旦显式定义了构造器,则系统不再提供默认构造器
- 一个类可以创建多个重载的构造器
- 父类的构造器不可被子类继承
⑥相关快捷键
[1]唤出快捷菜单
Alt+Insert
有的电脑需要按住Fn键,再按Insert才能生效
[2]声明无参构造器
当快捷菜单中选中的是Constructor时,回车,弹出下面窗口:
[3]声明全部参数构造器
[4]在快捷菜单输入字符匹配菜单项
输入gets就可以直接匹配到菜单项:Getter and Setter
[5]生成getter和setter方法
通常针对所有属性生成getter、setter方法
[6]生成toString()方法
⑦类的属性赋值的顺序
- 系统根据这个属性的类型来设置默认值。
private int age;
- 显示初始化
private int age = 6;
- 构造器初始化
public Person(int age) {
this.age = age;
}
- 调用方法或直接给属性赋值
person.setAge(5);
或
person.age = 18;