java 类加载顺序
来源:互联网 发布:关宁锦防线 知乎 编辑:程序博客网 时间:2024/05/21 20:22
package fly4j.test;import flytool.common.file.FileTool;import java.net.URL;/** * 启动 * Created by sff on 2017/6/18. */public class Startup { public static String dd = "sff"; public static void main(String args[]) throws Exception { URL baseUrl = FileTool.jarFile(Startup.class).getParentFile().getParentFile().toURI().toURL(); startup(baseUrl); } private static void startup(URL baseUrl) throws Exception{ dd = "gggggggg"; TestStaci.ss(); }}
package fly4j.test;/** * Created by sff on 2017/7/18. */public class TestStaci { static { System.out.println(Startup.dd); } private String name = "ff"; public static void ss(){ System.out.println("end"); }}
运行结果:
类加载顺序是:先加载Startup类,因为第一步要执行main函数。在加载main函数之前先加载Startup的dd成员变量。然后加载main函数。接下来加载startup方法。再加载FileTool类,再运行到dd = "gggggg".这段代码运行完之后,才会加载TestStaci类,TestStaci类中先加载static{}, 再加载ss(), 最后加载name成员变量。
类加载分为两部分,类加载顺序是编译顺序决定的,类加载进去之后才会加载它内部的static 和非static,类内部是先加载static的
阅读全文
0 0
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- Java 类加载顺序
- java 类加载顺序
- java类加载顺序
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- Java类加载顺序
- java 类加载顺序
- java 类加载顺序
- Java类加载顺序
- Java类的加载顺序
- Java虚拟机类加载顺序
- Java虚拟机类加载顺序
- MFC之底层窗口创建
- Elasticsearch安装及自动同步mysql数据库数据
- android 开发规范1
- Eclipse打开C/C++文件报错问题
- 启动多个MySQL实例作为Windows服务
- java 类加载顺序
- 深度学习:Sigmoid函数与损失函数求导
- 记腾讯互娱网站布局(1)
- ajax请求后台数据在ie浏览器上显示为空
- 深圳大学公文通简易检索系统
- java.lang.ClassNotFoundException: org.apache.commons.beanutils.DynaBean
- 如何在Linux下使用Tomcat部署Web应用(图文)
- view 截图方法
- Android 加载数据或者联网等待的弹框动画