本帖最后由 胡军 于 2013-3-31 14:01 编辑
- class Father
- {
- static
- {
- System.out.println("父类静态代码块");
- }
- {
- System.out.println("父类构造代码块");
- }
- }
- class Son extends Father
- {
- static
- {
- System.out.println("子类静态代码块");
- }
- {
- System.out.println("子类构造代码块");
- }
- Son()
- {
- System.out.println("子类无参数构造函数");
- }
- }
- class StaticExtendsDemo
- {
- public static void main(String[] args)
- {
- Son s = new Son();
- }
- }
复制代码 运行结果:
父类静态代码块
子类静态代码块
父类构造代码块
子类构造代码块
子类无参数构造函数
为什么结果是这样,为什么父类的静态代码块和构造代码块没有被覆盖呢?
是它们不能被继承还是其他原因导致的。
|