class BaseVariable{
BaseVariable(){
System.out.println("BaseVariable" );
}
}
class SubVariable{
SubVariable(){
System.out.println("SubVariable" );
}
}
class BaseStaticVariable{
BaseStaticVariable(){
System.out.println("BaseStaticVariable" );
}
}
class SubStaticVariable{
SubStaticVariable(){
System.out.println("SubStaticVariable" );
}
}
class Base {
static BaseStaticVariable bsv = new BaseStaticVariable();
BaseVariable bv = new BaseVariable();
static{
System.out.println("Base static code" );
}
{
System.out.println("Base Constructor code");
}
public Base(){
System.out.println("Base Constructor");
}
}
class Sub extends Base{
public Sub(){
System.out.println("Sub Constructor");
}
{
System.out.println("Sub Constructor code");
}
SubVariable bv = new SubVariable();
static{
System.out.println("Sub static code" );
}
static SubStaticVariable bsv = new SubStaticVariable();
}
public class Test{
public static void main(String[] args) {
Base base = new Sub();
}
}
本文通过一个具体的Java程序示例,详细展示了类的构造过程、静态与非静态成员的初始化顺序,以及子类如何继承父类的过程。该示例包括了基类和派生类的构造函数调用顺序、静态变量初始化等关键概念。
731

被折叠的 条评论
为什么被折叠?



