【JAVA学习】1、JAVA的体系架构和核心机制

1 JAVA的体系架构

分为三部分,面向三种应用场景。
JAVASE(J2SE) 标准版:C/S系统中Client端开发,主机应用。
JAVAEE 企业版:web开发,jdbc,servlet,jsp,hibernate。
JAVAME 微型版:JAVASE的内伸,应用于消费性电子产品,精简核心类库。
本质上是包含的库不同。

2 JAVA核心机制

(1)垃圾回收机制
垃圾:不再使用的内存空间应该回收。
JAVA底层垃圾收集器(GC)自动进行垃圾回收。JAVA提供系统级线程跟踪存储空间分配情况,在JVM空闲时检查并释放空间。

优点:开发人员不需要进行内存回收,提高编程效率;提高内存利用率;减少因为没有释放空间导致的内存泄漏。
缺点:程序员无法精确控制和干预;垃圾收集器要一直监听,造成性能消耗。

垃圾收集器有几种?
垃圾收集器底层原理?
垃圾收集器算法和优化?

(2)跨平台原理

编译
javac.exe
执行/翻译
java.exe
HelloWorld.java
源文件
HelloWorld.class
字节码文件
系统
JVM

javac.exe, java.exe, JVM(JAVA Virtual Machine, JAVA虚拟机)以及命令都在JDK中,即必须安装JDK(JAVA Development Kit,JAVA开发工具包)才具备开发环境。

在执行时表面上调用的是Java.exe,实际上调用Java.exe的时候会动态调用JVM,JVM将字节码文件逐行解释为当前操作系统认识的可执行文件的格式,因此说Java是解释型语言。

JVM(虚拟机)充当“翻译官”,将字节码翻译成当前平台或系统认识的可执行的文件格式。编译一次,到处运行,即跨平台。

C语言的跨平台原理与JAVA跨平台的区别:
① JAVA的字节码文件是与平台无关的,一次编译,到处运行,JAVA是拿着字节码文件在不同平台上运行,C语言是在不同平台上进行编译后产生字节码再运行。
② C语言不同的平台有不同的编译器,即编译器与平台相关,编译后的可执行文件也跟平台相关。
③ 实际上跨平台是指编译后的文件是否跨平台,从这个角度而言,C语言不是跨平台的。因为C语言不同平台有不同的解释器,它指的是源文件跨平台。

因为C语言产生的可执行文件可以直接在平台上运行,不用解释翻译,因此效率比JAVA高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值