JAVA的语言特点
Java之所以可以得到持续的发展力以及良好的生态系统,这完全取决于Java语言的自身技术特征。
- 是一个行业内通用的技术实现的标准:Java本身也算是一个半开源的产品,所以很多的厂商得以接触到Java的底层,这样使得Java的开发更加的透明;
- 是一门面向对象的编程语言:这样使得Java语言的语法结构更加方便开发者接受,这些面向对象的设计思想还在不断进行着扩充(不同的JDK版本);
- 提供有方便的内存回收处理机制:像一些编程语言里面需要明确的手工进行对象的回收与释放,否则程序无法正常提供支持,但是Java可以提供有自动的内存回收操作,这样处理会更加方便一些(这里面就牵扯到了一些优化方面的问题);
- 避免了复杂的指针问题,而使用更加简单的引用来代替指针;指针虽然是一种高效的内存处理模式,但是其需要较强的逻辑分析,而Java在设计的时候充分的考虑到了这一点,所以开发者直接利用引用就可以简化指针的处理,而引用也是在所有处理初学过程之中最为难以理解的部分;
- Java是为数不多支持多线程编程的开发语言,这样就可以使得单位时间内,处理的性能的提升(性能的提升并不是绝对的),多线程开发也是Java开发之中最为难以理解的部分,而正确的多线程处理才是提升处理性能的关键部分;
- Java提供有搞笑的网络处理能力,可以基于NIO实现更加高效的数据传输处理;
- Java具有良好的可移植性,这样就可以提升一个程序的适用范围;
- Java语言足够简单。
Java的可移植性
Java语言之中最大的特点在于其可移植性的支持,所谓的可移植性指的是同意程序可以在不同的操作系统之间任意的进行部署,这样就减少了开发的难度,在Java里面如果想要实现可移植性的控制,那么主要是依靠的JVM(Java虚拟机),Java虚拟机是一个由软件和硬件模拟出来的计算机,所有的程序只要有Java虚拟机的支持,那么就可以实现程序的执行,不同的操作系统上会有不同的版本的JVM存在,这样就可以实现可移植性。
所有Java程序的解释都要求放在Java虚拟机上处理。
所有的*.java的源代码程序最终都是需要经过编译后才可以使用,但是编译完成后的程序代码并不是一个绑定在某个具体操作系统上的程序,而是一种通用型的程序,而这种通用型程序就是JVM所能识别的代码。
所有的程序并不是直接运行在操作系统上,而是通过JVM执行,这样肯定要比直接在操作系统上执行的程序的处理速度要慢,但是后来因为硬件技术的飞速发展,这些问题已经可以忽略了,但是依然存在有JVM的调优问题。