您的位置:首页 > 编程语言 > Java开发

java 父构造器中调用子类重写的方法

2014-02-13 15:48 239 查看
class Base

{

public Base()

{

test();

}

public void test()

{

System.out.println("111");

}

}

public class Sub extends Base

{

private String name;

public void test()

{

System.out.println(name.length());

}

public static void main(String arg[])

{

Sub s = new Sub();

}

}

先调用base的构造函数,然后调用Sub的test的时候,name是空指针,异常。

java初始化顺序:

父类静态初始化块->子类静态初始化块.....->父类初始化块->父类构造器->子类初始化块->子类构造器........->父类初始化块->父类构造器->子类初始化块->子类构造器........
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: