jvm
来源:互联网 发布:js面向对象教程 编辑:程序博客网 时间:2024/06/08 09:46
关于jvm的一些小问题
- java和其他语言有什么区别?
答:java是一个纯软件平台,可以跨平台使用。jvm把java文件编译成.class文件可以跨平台使用,每当一个java程序都会生成jvm实例,只有当程序运行结束后,这个jvm才会退出。jvm通过调用main方法来启动java程序,这个main方法必须是public,stacic ,void并且该方法必须接受一串字符串数组参数只有同时满足才能够运行。
public static void main(String[] args)public static final void main(String[] args)static public void main(String[] args)static public synchronized void main(String[] args)
- jvm加载class文件的原理机制是什么?
答:java是一中动态性的解析语言,class只要被加载到jvm中才能运行。类加载器是一个类,实际上就是把类文件从硬盘上读到内存中。加载分为隐士加载和显示加载。
隐士加载:new一个实例来加载对象
显示加载:class.forName()
加载是动态的,它并不是一次性加载所有的类而是需要的时候才加载到jvm中。
Bootstrap Loader -负责加载系统类(jre/lib/rt.jar 类) | ----ExxClassLoader -负责加载扩展类 | --AppClassLoader -负责加载应用类
加载是父类委托机制先加载父类如果找不到在加载子类。
类的加载分为3步:
- 装载。根据查找路径找到对应的class文件
- 链接。
❶检查。检查待加载的类是否正确
❷准备。给类的静态变量分配存储空间
❸解析。将符号引用转换为直接引用 - 初始化。对静态变量和静态代码块执行初始化工作
阅读全文
0 0
- JVM
- jvm
- JVM
- JVM
- JVM
- JVM
- jvm
- jvm
- jvm
- JVM
- JVM
- jvm
- JVM
- JVM
- jvm
- jvm
- jvm
- JVM
- Java开发规范(一)
- Java基础---网络编程 ip udp
- springmvc-----图片上传
- 关于字符串匹配的算法(%%%)
- 深入浅出Tensorflow(一):深度学习及TensorFlow简介
- jvm
- 欢迎使用CSDN-markdown编辑器
- 获取文件的父路径
- 解题报告:HDU_6139 Galaxy at War (阶梯博弈)
- 炫技!超酷的HTML 3D动态效果
- docker常用命令
- 【转载】Azkaban源码分析
- 一步一步学多线程-synchronized
- Axure RP 8 教程