Java语言特性【开源、免费、跨平台、纯面向对象】
- 简单性
- 相对而言的,例如Java中不再支持多继承,C++是支持多继承的,多继承比较复杂。
- c++中有指针,Java中屏蔽了指针的概念。
- 所以相对来说Java是简单的。
- Java语言底层是C++实现的,不是C语言。
- 面向对象
- Java是纯面向对象的,更符合人的思维模式,更容易理解。
- 可移植性
- 什么是可移植性?
- Java程序可以做到一次编译,到处运行。
- 也就是说Java程序可以在Windows操作系统上运行
- 不做任何修改,同样的Java程序可以直接放到Linux操作系统上运行。
- 这个被称为Java程序的可移植性,或者叫做跨平台。
- Windows操作系统内核和Linux操作系统的内核肯定不同,他们这两个操作系统执行指令的方式也是不一样的。
- 结论:显示Java程序不能直接和操作系统打交道,因为Java程序只有一份,操作系统执行原理都不同。
- SUN的团队很聪明,他们想了一个办法,他们让Java程序运行在一台虚拟的计算机当中,这个虚拟的计算机叫做Java虚拟机,简称JVM。Java虚拟机再和底层的操作系统打交道。
- JDK,Java语言开发工具包(官网上下载),不同版本的JDK对应不同版本的JVM,当安装JDK后,JVM便在底层出现。
- JVM是C++开发的,是虚拟的,不同操作系统(不同版本)对应不同的JVM,主要分为Windows操作系统的JVM和Linux操作系统的JVM。
- 什么是可移植性?
- 多线程
- 健壮性
- 和自动垃圾回收机制有关,自动垃圾回收机制简称GC机制。
- Java语言运行过程中产生的垃圾是自动回收的,不需要程序员关心。
- 安全性