术语 | 简介 |
---|---|
简单性 | 1.语法“纯净”:没有头文件、指针、结构、联合、操作符重载、虚基类等概念 2.小:支持开发能够能在小型机器上独立运行的软件。 |
面向对象 | 面向对象设计是一种程序设计技术,将重点放在数据(对象)和对象的接口上(不同于C++,Java使用接口取代了多重继承)。 |
分布式 | 丰富的例程库,用于处理HTTP和FTP之类的TCP/IP协议。 |
健壮性 | Java编写的程序具有多方面的可靠性(强调早期的问题检测、后期动态的检测、消除容易出错的情况)。Java编译器能够检测许多在其他语言中仅运行时才能检测出来的问题。 |
安全性 | Java可以构建防病毒、防篡改的系统(为了适用于网络/分布式环境) |
体系结构中立 | 编译器生成一个体系结构中立的目标文件格式,只在拥有Java运行环境的系统上运行 |
可移植性 | 1.数值类型有固定的字节数 2.二进制数据以固定的格式进行储存和运输 |
解释型 | Java解释器可以在任何移植了解释器的机器上直接执行Java字节码 |
高性能 | 字节码可以(在运行时)动态的转换成对应运行这个应用的特定CPU的机器码 |
多线程 | 支持并发程序设计,更快的交互响应和实时行为 |
动态性 | 能够适应不断发展的环境,库中可以自由地添加新方法和实例变量,而对客户端没有影响 |
applet:在网页中运行的的Java程序
思路:用户从Internet下载Java字节码,并在自己的机器上运行。
要使用applet,只需要一个启动Java的Web浏览器(执行字节码),而不需要任何软件辅助。不过现在需要适配浏览器才可被允许运行applet
版本 | 年份 | 新语言特性 | 类与接口的数量 |
---|---|---|---|
1.0 | 1996 | 语言本身 | 211 |
1.1 | 1997 | 内部类 | 477 |
1.2 | 1998 | strictfp修饰符 | 1524 |
1.3 | 2000 | 无 | 1840 |
1.4 | 2002 | 断言 | 2723 |
5.0 | 2004 | 泛型类、"for each"循环、可变元参数、自动装箱、元数据、枚举、静态导入 | 3279 |
6 | 2006 | 无 | 3793 |
7 | 2011 | 基于字符串的选择语句、棱形运算符、二进制字面量、异常处理增强 | 4024 |
8 | 2014 | lambda表达式、包含默认方法的接口、流和日期/时间库 | 4240 |
9 | 2017 | 模块、其它的语言和类库增强 | 6005 |
术语名 | 缩写 | 简介 |
---|---|---|
Java Development Kit(Java开发工具包) | JDK | 编写Java程序的程序员使用的软件 |
Java Runtime Enviroment (Java 运行时环境) | JRE | 运行Java程序的用户使用的软件 |
Server JRE(服务器JRE) | 在服务器上运行Java程序的软件 | |
Standard Edition(标准版) | SE | 用于桌面或简单服务器应用的Java平台 |
Enterprise Edition(企业版) | EE | 用于复杂服务器应用的Java平台 |
Micro Edition(微企版) | ME | 用于小型设备的Java平台 |
Java FX | 用于图形化用户界面的一个备选工具包,在Java11之前的某些Java SE发布的版本中提供 | |
OpenJDK | Java SE的一个免费开源实现 | |
Java 2 | J2 | 一个过时的术语,用于描述1998~2006年之间的Java版本 |
Software Development Kit(软件开发程序) | SDK | 一个过时的术语,用于描述1998~2006年之间的JDK |
Update | u | Oracle公司的术语,表示Java8之前的bug修正版本 |
NetBeans | Oracle公司的集成开发环境 |