一个类的生命周期
来源:互联网 发布:电气硬件 软件是什么 编辑:程序博客网 时间:2024/06/05 15:22
在一个类编译完成之后,下一步就需要开始使用类,如果要使用一个类,肯定离不开JVM。在程序执行中JVM通过装载,链接,初始化这3个步骤完成。
类的装载是通过类加载器完成的,加载器将.class文件的二进制文件装入JVM的方法区,并且在堆区创建描述这个类的java.lang.Class对象。用来封装数据。但是同一个类只会被类装载器装载一次
链接就是把二进制数据组装为可以运行的状态。
链接分为校验,准备,解析这3个阶段
校验一般用来确认此二进制文件是否适合当前的JVM(版本),
准备就是为静态成员分配内存空间,。并设置默认值
解析指的是转换常量池中的代码作为直接引用的过程,直到所有的符号引用都可以被运行程序使用(建立完整的对应关系)
完成之后,类型也就完成了初始化,初始化之后类的对象就可以正常使用了,直到一个对象不再使用之后,将被垃圾回收。释放空间。
当没有任何引用指向Class对象时就会被卸载,结束类的生命周期
0 0
- 一个类的生命周期
- 一个Form的生命周期
- 一个Activty的生命周期
- 一个Activty的生命周期
- 一个MFC应用程序的生命周期
- 一个MFC应用程序的生命周期
- 一个并发程序的生命周期
- 一个MFC应用程序的生命周期
- 一个程序猿的生命周期
- 一个产品的完整生命周期
- Fragment的一个生命周期记录
- Android 一个Activity的生命周期
- iOS-一个UIViewController的生命周期
- 一个Ajax页面的新生命周期
- ASP.NET一个页面的生命周期
- 一个和viewcontroller生命周期相关的bug
- 一个java程序基本的生命周期详解
- 变量地址生命周期的一个问题
- 中缀表达式改后缀表达式
- WebView无网请求空web页面不显示错误信息
- linq sum source为空的两种处理方式
- mysql 的 redo 和 undo
- OpenCV常用知识点
- 一个类的生命周期
- Virtualbox DOC窗口下的命令行操作
- 【MySql】性能优化之分析命令
- jdk1.8 ConcurrentHashMap
- xUtils3带进度条下载(切换界面不会中断下载)
- 基于ubuntu14.04 cuda7.5 cudnn5.1caffe 配置
- android解码判断H264的I帧
- 前台页面优化全攻略(四)
- C++多线程之使用Mutex和Critical_Section