一 构造器是一个特殊的方法,这个方法用于创建实例时执行初始化。当创建一个对象时,系统为这个系统的实例变量进行默认初始化,整形设为0,布尔类型为false,引用类型为null
,如果想改变默认的初始化,就可通过构造器来完成。
public class ConstructorTest{
private String name;
private int count;
public ConstructorTest(String name,int count){
this.name=name;
this.count=count;
}
public static void main(String [] args){
ConstructorTest tc=new ConstructorTest("java",10000);
}
}
注意 :当系统开始执行构造器的执行体之前,系统已经创建类一个对象,只是这个对象还不能被外部程序访问,只能在该构造器中通过this引用,当构造器的执行体执行结束后,这个对象作为构造器的返回值被返回,通常还会赋给另一个引用类型的变量。从而让外部程序可以访问该对象。
二 构造器重载
同一个类具有多个构造器,多个构造器的形参列表不同,即为构造器的重载
1 通过 this关键字调用另一个构造器的初始化代码
2通过super调用父类构造器 (不管是否使用super,子类构造器总会调用父类构造器一次,使用类super就按super的来)
三 初始化代码块
只在创建java对象时隐式调用,而且在执行构造器之前执行
public class InstanceInitTest{
{
a=6;
}
int a=9;
public static void main(String []args){
System.out.pritnln(""+a);//输出9;
}
}