java 静态属性 静态代码块 静态方法声明 构造块 构造函数 动态属性 执行顺序

来源:互联网 发布:linux是哪个国家的 编辑:程序博客网 时间:2024/06/05 06:26
java 程序中 静态属性和静态方法是依赖与类,而不是依赖与对象存在,故静态部分比普通属性 普通
方法优先执行。


执行顺序 如下:
1、静态属性--静态方法声明--静态块         只加载类 无构造
2、动态属性--普通方法声明--构造块构造实例的时候
3、构造方法

类加载过程中 如存在父类 首先执行父类的 按上述方法执行。

package io.impTest;import org.junit.Test;/** * Created by fengxinzi on 17-11-15. */public class test1 {    @Test    public void test(){        new Student();    }}class  Student{    //构造代码块    private static Student student1 = new Student();    private static Student student2 = new Student("name");    private String name = getName();    {        System.out.println("构造代码块");    }    static {        System.out.println("静态代码块");    }    Student(){        System.out.println("默认构造");    }    Student(String name){        System.out.println("参数构造");    }    public String getName(){        System.out.println("获取名字");        return "获取名字";    }}

执行结果:

获取名字
构造代码块
默认构造
获取名字
构造代码块
参数构造
静态代码块
获取名字
构造代码块
默认构造
阅读全文
0 0
原创粉丝点击