Java八股-Java优缺点,跨平台,jdk、jre、jvm关系,解释和编译

java优势劣势?

优势:面向对象,平台无关,垃圾回收,强大的生态系统

劣势:运行速度慢(相比于c++和rust这样的原生编译语言会比较慢),语法繁琐(相比于python),内存占用大(jvm本身占内存)

java为什么跨平台?

因为jvm是跨平台的,Java的跨平台依托于jvm

jvm,jdk,jre关系?

jdk包含jre包含jvm

jvm是Java虚拟机,是用来实现java跨平台的

jre是java运行环境,是给使用者用的,包含jvm和一些Java类库

jdk是开发者用的,包含jre和一些开发工具

为什么Java解释和编译都有?

解释是指:java源代码被编译为字节码后在虚拟机中是解释执行的

编译是指:字节码中的频繁执行的热点内容会被虚拟机中的即时编译器(JIT)编译和优化,可以提高执行效率

鉴于作者水平有限,文章可能存在错误

如有指正,十分感谢

相关推荐
西阳未落5 小时前
C++基础(21)——内存管理
开发语言·c++·面试
我的xiaodoujiao5 小时前
Windows系统Web UI自动化测试学习系列2--环境搭建--Python-PyCharm-Selenium
开发语言·python·测试工具
callJJ5 小时前
从 0 开始理解 Spring 的核心思想 —— IoC 和 DI(2)
java·开发语言·后端·spring·ioc·di
wangjialelele5 小时前
Linux中的线程
java·linux·jvm·c++
谷咕咕5 小时前
windows下python3,LLaMA-Factory部署以及微调大模型,ollama运行对话,开放api,java,springboot项目调用
java·windows·语言模型·llama
没有bug.的程序员6 小时前
MVCC(多版本并发控制):InnoDB 高并发的核心技术
java·大数据·数据库·mysql·mvcc
在下村刘湘6 小时前
maven pom文件中<dependencyManagement><dependencies><dependency> 三者的区别
java·maven
hsjkdhs7 小时前
万字详解C++之构造函数析构函数
开发语言·c++
英杰.王7 小时前
JVM实战-G1参数调优
jvm
不务专业的程序员--阿飞7 小时前
JVM无法分配内存
java·jvm·spring boot