Java普通代码块,构造代码块,静态代码块,成员变量的执行顺序的代码实例
2017-11-10 17:03
831 查看
Java执行顺利中:(优先级从高到低。)静态代码块
---》mian方法
---》构造代码块
---》 成员变量 ---》构造方法。
package com.krycai;
import org.junit.Test;
public class JavaTest {
static class A{
//静态变量引出的静态方法,随类加载
private static String staticStr =initStaticStr();
//构造代码块
{
System.out.println("构造代码块1");
}
//对象成员,实例化后加载
private String str=initStr();
//构造函数
public A(){
System.out.println("构造函数2");
}
private static String initStaticStr(){
System.out.println("静态代码块4");
return "initStaticStr";
}
private String initStr(){
System.out.println("成员变量3");
return "initStr";
}
}
static class B extends A{
public B(){
System.out.println("子类构造函数5");
}
}
private static void question2(){
new B();
System.out.println();
}
public static void main(String[] args) {
question2();
}
}
输出结果
静态代码块4
构造代码块1
成员变量3
构造函数2
子类构造函数5
文章写的粗糙,指在给自己增加一些理解跟笔记。
详情可以查询:
成员变量与构造函数的执行顺序 http://blog.csdn.net/anlidengshiwei/article/details/43523629
Java普通代码块,构造代码块,静态代码块区别,执行顺序的代码实例
http://blog.csdn.net/qq_27093465/article/details/75339803
---》mian方法
---》构造代码块
---》 成员变量 ---》构造方法。
package com.krycai;
import org.junit.Test;
public class JavaTest {
static class A{
//静态变量引出的静态方法,随类加载
private static String staticStr =initStaticStr();
//构造代码块
{
System.out.println("构造代码块1");
}
//对象成员,实例化后加载
private String str=initStr();
//构造函数
public A(){
System.out.println("构造函数2");
}
private static String initStaticStr(){
System.out.println("静态代码块4");
return "initStaticStr";
}
private String initStr(){
System.out.println("成员变量3");
return "initStr";
}
}
static class B extends A{
public B(){
System.out.println("子类构造函数5");
}
}
private static void question2(){
new B();
System.out.println();
}
public static void main(String[] args) {
question2();
}
}
输出结果
静态代码块4
构造代码块1
成员变量3
构造函数2
子类构造函数5
文章写的粗糙,指在给自己增加一些理解跟笔记。
详情可以查询:
成员变量与构造函数的执行顺序 http://blog.csdn.net/anlidengshiwei/article/details/43523629
Java普通代码块,构造代码块,静态代码块区别,执行顺序的代码实例
http://blog.csdn.net/qq_27093465/article/details/75339803
相关文章推荐
- Java普通代码块,构造代码块,静态代码块区别,执行顺序的代码实例
- Java 普通代码块静态代码块执行顺序(实例讲解)
- Java中静态块,静态成员变量,构造块,普通成员变量,构造方法的执行顺序
- java 静态代码块,实例代码块,构造方法的执行顺序
- 一个关于继承关系中静态快、成员变量、构造体代码的执行顺序的Java代码
- Java初学者Paulmarkyes---中静态代码块,普通代码块,构造代码块,构造方法先后执行顺序以及区别
- Java类中代码的执行顺序 静态代码块>构造代码块>构造方法
- Java中static成员变量、成员变量、static代码块、代码块、构造方法的执行顺序
- Java父类与子类中静态代码块 实例代码块 静态变量 实例变量 构造函数执行顺序
- java 中的 成员变量、局部变量、静态变量、类变量、非静态变量、实例变量、向前引用、非法向前引用、静态代码块、非静态代码块 执行时机
- java 中的 成员变量、局部变量、静态变量、类变量、非静态变量、实例变量、向前引用、非法向前引用、静态代码块、非静态代码块 执行时机
- java 成员变量 静态变量代码块 静态代码快加载顺序
- Java父类与子类中静态代码块 实例代码块 静态变量 实例变量 构造函数执行顺序
- Java类加载信息的顺序:包括静态代码快、静态类变量、非静态代码快、构造方法、普通方法
- Java子类继承父类,静态代码块、普通代码块、构造代码块的执行顺序
- java 中的 成员变量、局部变量、静态变量、类变量、非静态变量、实例变量、向前引用、非法向前引用、静态代码块、非静态代码块 执行时机
- Java初始化顺序总结及其程序执行过程图- 静态变量、静态代码块、成员变量、构造函数
- Java类的各种成员初始化顺序如:父子类继承时的静态代码块,普通代码块,静态方法,构造方法,等先后顺序
- java中 静态成员、实例成员、构造方法在子类和父类中的执行顺序
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序