面向对象语言的三个基本特征各自特点及优势
面向对象语言的三个基本特征:识认性、类别性、多态性;优势:继承性,在基本层次关系的不同类中共享数据和操作。
识认性,系统中的基本构件可识认为一组可识别的离散对象;类别性,系统具有相同数据结构与行为的所有对象可组成一类;多态性,对象具有唯一的静态类型和多个可能的动态类型。
较典型的面向对象语言有:
simula 67,支持单继承和一定含义的多态和部分动态绑定;Smalltalk支持单继承、多态和动态绑定;EIFFEL,支持多继承、多态和动态绑定。
C++,支持多继承、多态和部分动态绑定。Java,支持单继承、多态和部分动态绑定。五种语言涉及概念的含义虽然基本相同,但所用术语有别。
扩展资料
传统的基于类的面向对象语言的一个主要特点就是inheritance,subclassing和subtyping之间的密不可分的联系。很多的面向对象语言的语法,概念,就是从这三者而来的。
比如说,通过subclassing,可以继承父类的一些方法,而同时又可以在子类中改写父类的方法。这个改写过的方法,通过subtyping、subsumption,又可以从一个类型是父类的对象去调用。
但是,inheritance、subclassing、subtyping这三者并不是永远和睦相处的。在一些场合,这三者之间的纠缠不清会妨碍到通过继承或泛型得到的代码重用。
因此,人们开始注意到把这三者分离开来的可能性。区分subclassing和subtyping已经很常见了。而其它的一些方法还处于研究的阶段。
推荐于2017-11-20 · 知道合伙人数码行家
知道合伙人数码行家
向TA提问 私信TA
所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。
所谓继承是指可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按级分类的概念。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。 通过继承创建的新类称为“子类”或“派生类”,被继承的类称为“基类”、“父类”或“超类”。继承的过程,就是从一般到特殊的过程。要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。继承概念的实现方式有二类:实现继承与接口继承。实现继承是指直接使用基类的属性和方法而无需额外编码的能力;接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;
所谓多态就是指一个类实例的相同方法在不同情形有不同表现形式。多态机制使具有不同内部结构的对象可以共享相同的外部接口。这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们(那些操作)可以通过相同的方式予以调用。
继承 代码重用,减少编码量,间接减少维护成本。
多态 不同的场合做出不同相应,可以说是封装的一个实现。
面向对象,最直接的表现就是对代码的有效管理,以避免程序过大造成的代码混乱,提高开发效率,降低代码维护成本,有效提高多人协同编码的效率。
以上,是个人对面向对象的理解,希望对你有帮助。
代码重用性好