首页 > 试题广场 >

C++JavaObjective-CC#语言是如何体现

[问答题]
C++/Java/Objective-C/C#语言是如何体现面向对象思想的。

不管什么面向对象语言,其面向对象思想就是通过面向对象特点:继承,封装,多态来实现面向对象设计(好像还有个抽象性,这里就不说了)。

在Java中:

继承性   Java通过继承实现代码复用。继承而得到的类称为子类,被继承的类称为父类。子类不能继承父类中访问权限为private的成员变量和方法。子类可以重写父类的方法,及命名与父类同名的成员变量。但Java不支持多重继承,即一个类从多个超类派生的能力。
封装性   java语言中,对象就是对一组变量和相关方法的封装,其中变量表明了对象的状态,方法表明了对象具有的行为。通过对象的封装,实现了模块化和信息隐藏。通过对类的成员施以一定的访问权限,实现了类中成员的信息隐藏。Java有四个不同的限定词:public,private,protected,default。

多态性   多态性体现在两个方面:由方法重载实现的静态多态性(编译时多态)和方法重写实现的动态多态性(运行时多态)。

对于C++来说,本人了解不多,我觉得它与Java在面向对象语法和概念上有很多相似的地方,然而Java是一种完全面向对象的语言,所有的东西都是在类中的,而C++中,全局变量、结构、枚举、联合等一些列源于C的概念仍然存在;同时其main方法也在所有的类之外。

发表于 2015-01-18 14:56:40 回复(0)
通过 继承 和 封装 体现面向对象思想的。 
发表于 2015-01-14 16:13:24 回复(0)