2.2 Java特性和优势
一、简单性
因为简单才易学,Java就是C++语法纯净版,它没有头文件,没有一些指针运算也不用去分配内存,而且语法基于C,因此学习起来完全不费力。
二、面向对象
面向对象是一种程序设计技术,它将重点放在对象以及对象之间的接口上,它模拟的是人的思维去写程序,所以说人去学习非常的快,在Java中就流传了一句话叫做万物皆对象。
三、可移植性
Java具有可移植性即跨平台,Java代码可以跨平台去移植,不用管是Windows还是Linux还是macOS,他根本不用管你的操作系统和硬件环境。一次编写到处运行,有一句话称之为write once run anywhere。Java在设计时就很注重跨平台性,所以在我们以后再Windows上写的程序在Linux服务器上一样能够运行起来,这就是它跨平台的一个好处。
四、高性能
Java中有一项功能叫做即时编译,他可以使某些代码的效率接近C++的效率,随着技术的不断完善相信有一天他会超过C++的效率。
五、分布式
Java还可以写一些分布式的程序,之前我们谈到的Java就是为网络分布式环境所设计的,因为他可以处理很多TCP/IP协议上的东西,在Java中通过一个url统一资源定位符可以访问一些网络上的资源就跟访问本地一样,通过学习以后会通过Java获取一些网络上的资源,就像在本地打开了一个我的电脑一样是非常简单的,而且Java还支持一些远程的方法调用,使得一些程序能够通过网络调用方法,也是非常强大的。
六、动态性
Java本身是不具有动态性的,但是我们要学习Java有一个反射机制,通过反射让我们的Java有了一些动态性,动态性是一个非常重要的特性,我们未来学习的很多框架的底层可能都是基于反射,而且这一点是C++语言无法实现的。
七、多线程
多线程的使用会带来更好的交互行为和实施行为,比如现实生活中很多都是多线程,比如可以同时看视频和听音乐,这在之前肯定是不可能的,你要么先看视频要么先听音乐,现在我们可以同时做。又如可以边上QQ边打游戏,这都是多线程在你身边的一些应用,多线程的简单性也是Java程序主流服务器端开发语言的主要原因之一。
八、安全性、健壮性
Java语言是安全的健壮的,Java适合用于网络的分布式环境,为了达到这一目标,Java在安全性方面投入了很大的经历,使Java可以构建一些防病毒防篡改的系统,Java吸收了C跟C++的优点,而且去掉了他们影响程序健壮性的一部分,比如一些关于指针和内存的管理,咱们做的Java程序几乎不可能造成计算机的崩溃。Java系统在每次运行时都会对内存进行一些检查,确认都是合法的,而且不至于引起一些问题,哪怕真的出现了问题程序也不会崩溃,因为Java程序中有一个异常机制,咱们可以通过捕获异常来解决异常。