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

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

如有指正,十分感谢

相关推荐
毕设源码-邱学长2 小时前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
rookieﻬ°3 小时前
PHP框架漏洞
开发语言·php
炸膛坦客4 小时前
单片机/C/C++八股:(二十)指针常量和常量指针
c语言·开发语言·c++
兑生4 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
daidaidaiyu4 小时前
一文学习 Spring 声明式事务源码全流程总结
java·spring
炸膛坦客5 小时前
单片机/C/C++八股:(十九)栈和堆的区别?
c语言·开发语言·c++
零雲5 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
Jay_Franklin6 小时前
Quarto与Python集成使用
开发语言·python·markdown
2401_831824966 小时前
代码性能剖析工具
开发语言·c++·算法
Oueii6 小时前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python