定义:没有编写构造器,系统提供一个默认构造器,编写构造器后,系统不再提供
格式:修饰符:public、protected、private+构造器名称:与类同名+形参类表(没有返回值,不用void声明)
特点:
- 函数名与类名相同
- 不用定义返回值类型
- 不可以写return语句
- 可以重载不可以重写
- 多个构造函数是以重载的形式存在的
- 父类的构造方法不参与继承
构造器重载
无参
public 类名(){}
有参
public 类名(String name)
{
this.name=name;
}
在一个构造器中直接使用另一个构造器的初始化
public 类名(String name,String color)
{
this(name);
this.color=color;
}
调用父类构造器
public 子类名(String name,String color,double weight)
{
super.(name,color);
this weight=weight;
}
- This显式调用,也会先调用父类构造器
- 没有this和super,系统在执行子类构造器之前,隐式调用父类无参构造器
- 初始化子类对象时,系统会上溯其父类构造器……以此类推,最先执行java.lang.Object类的构造器
类的private方法会隐式地被指定为final方法