初始化块只在创建java对象是隐式执行,而且在执行构造器之前执行 谁给解释一下
//初始化块输出怎么在构造器之后啦class Transport
{
public Transport(String speed)
{
System.out.println("交通工具时速: "+speed+"km/h");
}
public Transport(String speed,double price)
{
this(speed);
System.out.println("交通工具价格: "+price+"元");
}
public void loadNumber()
{
System.out.println("交通工具能载客啊");
}
public Transport()
{
}
}
class Bus extends Transport
{
{
System.out.println("执行普通初始化块");//普通初始化块 java创建对象时会隐式执行初始化块,并且在构造器之前执行 这个之前是同类里面,在构造器前面执行
}
public Bus(String speed)
{
System.out.println("汽车时速: "+speed+"km/h");
}
public Bus(String speed,double price)//带参构造器
{
this(speed);
System.out.println("汽车价格: "+price+"km/h");
}
public Bus()
{
}
}
public class TransportTest
{
public static void main(String[] args)
{
Bus bs=new Bus("100",99);//定义类变量,初始化
bs.loadNumber();//子类调用父类实例方法
}
}
/**输出
交通工具时速: 100km/h
交通工具价格: 80.0元
执行普通初始化块
交通工具能载客啊
*/