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

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

如有指正,十分感谢

相关推荐
不写八个28 分钟前
Express教程【003】:Express获取查询参数
开发语言·express
Maxwellhang29 分钟前
【音频处理】java流式调用ffmpeg命令
java·ffmpeg·音视频
Maỿbe1 小时前
阻塞队列的学习以及模拟实现一个阻塞队列
java·数据结构·线程
we风2 小时前
【SpringCache 提供的一套基于注解的缓存抽象机制】
java·缓存
趙卋傑4 小时前
网络编程套接字
java·udp·网络编程·tcp
两点王爷4 小时前
Java spingboot项目 在docker运行,需要含GDAL的JDK
java·开发语言·docker
万能螺丝刀17 小时前
java helloWord java程序运行机制 用idea创建一个java项目 标识符 关键字 数据类型 字节
java·开发语言·intellij-idea
Mr.Demo.7 小时前
[JVM] JVM内存调优
jvm
zqmattack7 小时前
解决idea与springboot版本问题
java·spring boot·intellij-idea
Hygge-star7 小时前
【Java进阶】图像处理:从基础概念掌握实际操作
java·图像处理·人工智能·程序人生·职场和发展