Java语言的特点是什么?
面向对象性:两个基本概念:类、对象;三大特性:封装、继承、多态
>健壮性:吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制
>跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”
JDK、JRE、JVM
- JDK是提供给java开发人员使用(java development kit)
- 包含开发工具(编译工具、打包工具)和JRE(运行环境)
- JRE是java运行环境(java runtime environment)
- java虚拟机(JVM)和java程序所需要的核心类(Java SE标准类库)
- JVM是java虚拟机(java virtual machine)
JDK = 开发工具(java, javac, javadoc) + jre
JRE = java核心类库 + jvm
jvm是java虚拟机
jdk目录
- bin:java开发工具
- javac:编译工具
- java:解析工具
- javadoc:生成网页文档指令
- db:java数据库
- include:c语言编写的文件,调用c语言使用
- jre:运行时环境
- lib:相关的java包
- src.zip:存放常见开源代码
javadoc
javadoc -d folder -author -version file.javajavaapi文档
application programming interface
应用程序编程接口
https://www.oracle.com/java/technologies/downloads/
JDK版本介绍
- JDK1.4 正则表达式、异常链、NIO、日志类、XMl解析器、XLST转换器
- JDK1.5 自动装箱、泛(fàn)类、动态注解、枚举、可变长参数、遍历循环
- JDK1.6 提供动态语言支持、提供编译API和卫星HTML服务器API、改进JVM的锁、同步垃圾回收、类加载
- JDK1.7 提供GI收集器、加强对非JAVA语言的调用支持( JSR-292,升级类加载框架 )
- JDK1.8 Lambda表达式、方法引用、默认方法、新工具、Stream API、Date Time API、Optional类、Nashorn、JavaScript引擎
- JDK9 模块系统、交互式编程环境、HTTP2客户端、改进的javadoc、多版本兼容jar包、集合工厂方法、私有接口方法、进程API等
- JDK10 局部变量类型推导、将JDK多存储库合并为单存储、库垃圾回收接口并行Full GC的G1、应用数据共享
- 线程局部管控、移除Native-Header Generation Tool(javah)、Unicode、标签扩展、备用内存设备上分、
- 配堆内存、基于实验JAVA的JIT编译器、Root证书、基于时间的版本控制
JDK11
javase 标准版
- javaee 企业版
- javame 小型版