- Java即是一门编程语言也是一个平台。
- Java是高级语言,他的主要特性可以由以下几个词来概括:
- 简单
- 架构中立
- 面向对象
- 可移植性
- 分布式
- 高性能
- 多线程
- 健壮性
- 动态性
- 安全性
在Java中,源代码首先会写在一个无格式的文本文件中,且以.java作为文件后缀,如test.java。紧接着java编译器javac会将这些源文件编译成以.class为后缀名的字节码文件---字节码是运行于java虚拟机的“机器码”,即java虚拟机(JVM)所运行的是字节码,而字节码是跟你本地的处理器无关的,然后java启动器通过一个JVM实例来运行你的一个程序。
整个软件开发过程如下图:
因为Java虚拟机可以运行于很多不同的操作平台(当然不同的平台上的JVM是不一样的),如Microsoft Windows, the Solaris™ Operating System (Solaris OS), Linux, or Mac OS等,所以同样的字节码文件(.class)文件可以运行于任意提供了JVM的平台,这为java的可移植性提供了保证。java可移植性视图:
3.Java平台:
一个平台即是程序运行的硬件或者者软件环境,而上面我们也提到一些比较著名的平台如Microsoft Windows, Linux, Solaris OS, and Mac OS。一般的平台指的是操作系统与硬件的结合体,但是Java平台并非如此。Java平台指的仅仅是一套运行于其他基于硬件的平台上的一套软件集合。
Java由Java虚拟机(JVM)和Java应用编程接口(API)组成。API是一套已经实现的软件功能部件,它可以提供很多有用的功能。API通过包(Package)把相近的类文件(.class)分到同一个库里面。
API和Java虚拟机(JVM)使得java程序独立于硬件平台,如下图所示:
作为一个独立于平台的环境,运行于Java平台上的程序会比其他的本地代码速度要慢一些,但编译器与JVM的优化使得Java应用性能得以提高至可以本地代码相媲美,且不会影响可移植性。