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)编译和优化,可以提高执行效率

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

如有指正,十分感谢

相关推荐
何中应4 分钟前
EasyExcel使用(二:写出)
java·后端·maven·excel
awonw12 分钟前
[python][基础]Flask 技术栈
开发语言·python·flask
木宇(记得热爱生活)26 分钟前
Qt GUI缓存实现
开发语言·qt·缓存
lly20240630 分钟前
C# 正则表达式
开发语言
Chef_Chen32 分钟前
从0开始学习R语言--Day58--竞争风险模型
android·开发语言·kotlin
minji...1 小时前
数据结构 堆(4)---TOP-K问题
java·数据结构·算法
咖啡の猫1 小时前
bash的特性-常见的快捷键
开发语言·chrome·bash
命苦的孩子1 小时前
Java 中的排序算法详解
java·开发语言·排序算法
咖啡の猫1 小时前
bash的特性-常用的通配符
开发语言·chrome·bash
凉冰不加冰1 小时前
JVM类加载机制全流程详解
jvm