Java地基(一)---往昔

jdk版本选择:

1.6版本:老软件

1.8版本:稳定

最新版本:极客

1. 历史

sun公司开发开发到1.6被收购,同时拥有Hotspot虚拟机即目前java所用

里程碑:

  • 1.2版本加入三版本

  • 1.5加入自动装箱,泛型等

  • 1.6版本被oracle收购

2.三个平台

三平台的更新与java的更新区分

  1. J2SE 面向桌面应用开发

  2. J2EE 面向企业级开发

  3. J2ME 面向手机移动终端开发

3.JDK

sdk 、jdk(java development kit):开发工具包

jdk自带JRE

JRE:Java运行坏境,面向用户

API:编程接口,说明文档之类

3.1 环境变量
  • JAVA_HOME:指定jdk安装目录
  • PATH:使得系统可以在任何路径下识别java命令
  • CLASSPATH:java加载类路径,即指定将来要运行加载的class文件的位置
3.2 目录结构说明

JDK结构:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jHWWPE7Q-1621501721432)(C:\Users\86132\AppData\Roaming\Typora\typora-user-images\image-20210519100015474.png)]

JDK目录:

在这里插入图片描述

在这里插入图片描述

4. java特点

即是语言、开发坏境、运行坏境、部署坏境

优点:面向对象、唯一特点:跨平台、多线程、开源

字节码验证:

  • 检查当前class文件的版本和JVM的版本是否兼容
  • 检查当前代码是会破坏系统的完整性
  • 检查当前代码是否有栈溢出的情况
  • 检查当前代码中的参数类型是否正确
  • 检查当前代码中的类型转换操作是否正确
5.JVM
  1. JVM是java中最核心的一个东西,它在计算机的内存中,虚拟并提供了java代码可以在其中运行的基础环境。jvm即java虚拟机,它主要有一个功能就是将编译好的class文件进行解释执行,因为class文件不能由操作系统直接执行,需要有jvm解释方可执行。
  2. jre是指java运行时环境,class文件在运行时需要调用各种java的类库,即jvm要想运行class文件必须要依赖jre中的lib库,可以认为,jvm+lib组成jre。
6. 垃圾回收器

​ 对内存的释放,在JVM中,由垃圾回收器(Garbage Collection,GC)来完成。 不同类型的GC,在JVM中,会根据不同的算法,对不同的内存区域内标记为垃圾的空间,进行回收释 放。在这个过程中,是不需要编程人员干预的,它自己会主动的完成。

在代码中,我们也可以调用JavaSE-API提供的方法,通知GC现在去进行垃圾回收的工作:

java.lang.System.gc();
java.lang.Runtime.gc();

注意,虽然可以主动通知,但是最后GC并不一定会真的的立刻执行,因为这个垃圾回收的过程什么时候执行,最终还是要根据GC的具体算法和当前内存的使用情况来确定的 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值