java类加载顺序

package com.demo;

/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {

String s1 = "成员属性";

static String s2 = "静态属性";

String s3;

static String s4;

static {
System.out.println("静态代码快");
}

{
System.out.println("普通代码快");
}

public static void test1() {
System.out.println("静态方法");
}

public void test2() {
System.out.println("普通方法");
}

public static void main(String[] args) {
// ClassLoaderSequence.test1();
new ClassLoaderSequence().test2();
}
}


//运行 ClassLoaderSequence.test1(); 得出结论:类加载会先加载有初始值的静态属性和静态代码快顺序从上至下,最后调用方法。

//运行 new ClassLoaderSequence().test2(); 得出结论:先加载类,new出对象后(构造方法)加载有初始值的属性和代码快(有初始值的静态属性已经加载过所以不会在加载)顺序从上至下,最后调用方法。

//综合结论:
类加载不会加载静态方法、普通方法、普通代码快、没有初始值的属性、有初始值非静态的属性。
类加载会加载静态代码快、有初始值的静态属性,顺序从上至下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值