zoukankan      html  css  js  c++  java
  • JAVA语言对比C++语言的几个优点和自身的关键特性

      之所以写这篇博客不是为了比较JAVA语言和C++语言到底孰优孰劣,而是从语言本身出发进行对比总结程序编码设计上的差别。因水平有限,某些内容可能太过片面,欢迎指正和讨论。

      JAVA语言在设计上很好地借鉴了C++语言,是一种完全“面向对象”的编程语言。JAVA语言的语法与C++语言的结构语法非常相似,这使得C++程序猿学习JAVA变得非常容易。

      JAVA语言的最大优点就是“Wirte Once,Run Everywhere”,就是“一次编写,到处运行”的意思。JAVA语言相对C++来说,增加了一些新的特性:1)提供了GC,对内存进行自动管理,程序猿无需再程序中进行分配、释放内存,一般来说不用再担心内存分配错误;2)不再使用指针,而是采用其他的方法来弥补;3)与C++相比,JAVA取消了多重继承这个类特性,使得类的继承变得简洁;4)避免了赋值语句和逻辑语句的混淆,同时取消了其他值与布尔值之间的自动转换,这一点有效地降低了某些运行时错误。

      关于JAVA语言的关键特性方面,这也是面试过程中容易问到的题,它从宏观方面说明了你对这一门编程语言的理解。JAVA语言是一门非常优秀的编程语言,具有很多有效的特性,最主要的有以下几个。

      简洁有效。JAVA语言是一门简洁的“面向对象”的语言,相比C++而言来说更加严谨简洁,它没有C++语言中所有的难以理解的、容易混淆的特性,例如指针、结构、运算符重载、虚拟基础类等。

      面向对象。JAVA语言一门完全面向对象的语言,不支持类似C语言那样的面向过程的程序设计技术,这也是JAVA语言最重要的语言特性。JAVA语言将数据和对数据的操作都封装在一个类中,并提供类,接口和继承,JAVA类(class)仅支持单继承(C++支持多继承),接口(interface)支持多继承,类与接口之间有实现(implements)机制。JAVA在面向对象上类似于SmallTalk,但从其他方面来说优于SmallTalk。

      可移植性。JAVA应用程序可以在配备了JAVA解析器和运行环境的任何计算机系统上运行,这使得JAVA应用有了便于移植的良好基础。

      解释型。JAVA语言是一门解释型语言,相对C/C++来说,JAVA程序执行效率低,速度慢,但是正是因为JAVA通过在不同的平台上运行JAVA解释器,对JAVA代码进行解释,从而实现了“Wirte Once,Run Everywhere”的跨平台目标。有舍有得啊,另一面来说,随着机器性能的提高,解释技术的改进(像即时编译,just in time),用户或许不会在乎这种性能上的差异。

      适合分布式计算。Java是一种适合于网络应用程序开发的语言,用Java语言编写Socket通信程序可以像访问本地文件系统那样通过URL访问远程对象,可以实现公共网关接口(CGI)脚本的开发,还可以应用Java小应用程序(Applet)、Java服务器页面(Java Server Page,JSP)、Servlet等方式进行网络应用开发。

  • 相关阅读:
    Algorithm Gossip (48) 上三角、下三角、对称矩阵
    .Algorithm Gossip (47) 多维矩阵转一维矩阵
    Algorithm Gossip (46) 稀疏矩阵存储
    Algorithm Gossip (45) 费氏搜寻法
    Algorithm Gossip (44) 插补搜寻法
    Algorithm Gossip (43) 二分搜寻法
    Algorithm Gossip (42) 循序搜寻法(使用卫兵)
    Algorithm Gossip (41) 基数排序法
    Algorithm Gossip (40) 合并排序法
    AlgorithmGossip (39) 快速排序法 ( 三 )
  • 原文地址:https://www.cnblogs.com/HackingProgramer/p/4015110.html
Copyright © 2011-2022 走看看