构造器的特征:
- 具有和类相同的名称;
- 不声明返回值的类型;
- 不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值;
构造器的作用:创建对象,给对象进行初始化;
语法格式:
修饰名 类名(参数列表){
初始化语句;
}
代码语言:javascript复制public class Animal{
private int age;
public Animal(){
age = 4;
} //构造器
public void setAge(int i){age = i;}
public int getAge(){return age;}
}
当创建Animal类的实例时,构造方法就被调用,此时age被赋予初始值4
Animal a = new Animal()
根据参数的不同,构造器可以分为以下两类:
- 隐式无参构造器(系统默认提供);
- 显示定义一个或多个构造器;
注意:
- java语言中,每个类都至少有一个构造器;
- 默认构造器的修饰符与所属类的修饰符一致;
- 一旦显示定义了构造器,则系统不再使用默认构造器;
- 一个类可以创建多个重载的构造器;
- 父类的构造器不可被子类继承;
构造器的重载:使对象的创建更加灵活,方便创建各种不同的对象。
代码语言:javascript复制//java中一个文件中不能同时有两个public类,但是可以存在多个类
public class Person{
String name;
int age;
public Person(String name,int age,Date d){...}
public Person(String name,int age){...}
public Person(String name,,Date d){...}
public Person(){...}
}