【Java面试题】16 静态代码块,main方法,构造代码块,构造方法
2017-03-23 09:53
295 查看
public class HelloB extends HelloA{ public HelloB() { System.out.println("HelloB"); } { System.out.println("I am B class"); } static{ System.out.println("static B"); } public static void main(String[] args){ System.out.println("HelloB的主方法"); new HelloA(); new HelloA(); new HelloB(); new HelloB(); } } class HelloA{ public HelloA() { System.out.println("HelloA"); } { System.out.println("I am A class"); } static{ System.out.println("static A"); } }
运行结果:
static A
static B
HelloB的主方法
I am A class
HelloA
I am A class
HelloA
I am A class
HelloA
I am B class
HelloB
I am A class
HelloA
I am B class
HelloB
相关例子:http://www.cnblogs.com/wangzhongqiu/p/6288452.html
public class testdaimakuia { public static void main(String[] args) { B b = new B(); } } class A { { System.out.println("A的构造块"); } A() { System.out.print("A"); } } class B { { System.out.println("B的构造块"); } B() { System.out.print("B"); } A a = new A(); }
执行结果:
B的构造块
A的构造块
AB
public class testdaimakuia { public static void main(String[] args) { B b = new B(); } } class A { static { System.out.println("A的静态代码块"); } { System.out.println("A的构造块"); } A() { System.out.print("A"); } } class B { static { System.out.println("B的静态代码块"); } { System.out.println("B的构造块"); } B() { System.out.print("B"); } static A a = new A(); }
执行结果:
B的静态代码块
A的静态代码块
A的构造块
AB的构造块
B
静态成员变量==静态代码块(按照出现先后顺序执行)>mian方法>构造代码块==成员变量(按照出现先后顺序执行)>构造方法
相关文章推荐
- JAVA中的代码块、静态代码块、构造方法、main方法执行顺序
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序
- java中静态代码块,构造代码块,构造方法,main方法的执行顺序
- java之静态代码块、构造块、构造方法的简单例子
- java 第六天 面向对象(基础篇之main方法、代码块、构造方法私有化)
- java静态代码块、初始化块和构造方法的执行顺序解析
- Java继承中父类子类构造方法、静态代码块、非静态代码块的执行顺序
- 浅析Java中的构造代码块、静态代码块与构造方法
- java静态代码块和构造方法执行顺序
- Java中静态代码块,非静态代码块,以及父类与子类的构造方法的之间调用顺序
- 黑马程序员——Java基础---静态代码块和构造方法执行顺序
- java静态代码块、初始化块和构造方法的执行顺序
- java静态代码块、初始化块和构造方法的执行顺序
- JAVA静态代码块执行过程 以及和构造方法的区别
- java静态代码块、初始化块和构造方法的执行顺序【转】
- java静态代码块、初始化块和构造方法的执行顺序
- Java中静态代码块,静态变量,静态方法,构造方法初始化顺序
- 关于java中子类,父类中,静态代码块: staic{},动态代码块:{},构造方法,类属性,对象属性等执行顺序做个总结:
- Java子父类间静态代码块、构造代码块、构造方法的执行顺序