`
kakajw
  • 浏览: 265098 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

精简的OOP的三大特性

 
阅读更多

封装:

1.隐藏实现细节;
2.恰当地公开接口;
3.将接口和实现分开,增强可维护性;(实现细节改变时,使用该类的客户端程序不需要改变)


继承

1.描述联结类的层次模型;
2.通过抽象,表达共性,实现类的重用;
3.通过子类增加方法和属性以及重写方法,表达差异性;


多态

1.屏蔽子类的差异性,针对共性/接口编程;(向上转型)
2.增强可扩展性;

 


相关设计原则:
开闭原则:软件实体应该对扩展开放,对修改(对已有软件模块、特别是最重要抽象层模块的的更改)关闭。

 

迪米特法则(对于封装):对象间尽量最少了解,彻底将API接口和具体实现相分离,模块间仅仅通过API进行通信。

 

里氏代换原则(对于继承):如果对于每一个类型为A的对象a,都有类型为B的对象b,使得A定义的所有程序P在所有对象a都替换成b时,程序P没有变化,那么B是A的子类型。

 

合成/聚合复用原则(对于继承):尽量使用合成/聚合,尽量不要使用继承。


依赖倒转原则(涉及多态):抽象不应依赖于细节,细节应依赖于抽象;针对接口而非实现编程。

分享到:
评论

相关推荐

    FOXPRO9精简安装包

    1. **面向对象编程(OOP)**:VFP9支持类(Class)、对象(Object)和继承(Inheritance),使得代码结构更加清晰,可维护性更强。 2. **增强的数据库引擎**:提供更强大的SQL支持,包括视图(View)、存储过程...

    Visual Basic 6.0 中文绿色精简版

    OOP的主要概念包括类、对象、继承和多态性,这些特性可以帮助开发者构建更复杂、更灵活的应用程序。 ##### 2.4 丰富的API支持 VB6.0内置了大量的API(应用程序编程接口),涵盖了文件操作、网络通信、数据库访问等...

    飞机大战精简版

    "飞机大战精简版"就是这样一款特别为初学者设计的小型游戏,它巧妙地结合了Java编程语言的面向对象特性,使得学习过程既有趣又富有挑战性。 首先,让我们了解一下Java的面向对象编程(Object-Oriented Programming,...

    C++编程入门 精简

    封装是面向对象编程的三大特性之一,它是保护对象内部状态的一种机制。通过封装,我们可以隐藏对象的内部实现细节,仅对外提供有限的公共接口。这样可以防止外部代码直接修改对象的状态,确保数据的安全性,并使得...

    Borland C 3.1 精简版

    值得注意的是,虽然这款精简版在发布时并不支持面向对象编程(OOP),但是Borland的后续版本如C++ Builder等则增加了对C++的全面支持,包括类、继承、多态等OOP特性。对于学习C语言基础的用户来说,Borland C++ 3.1 ...

    VB精简版Microsoft Visual Basic

    尽管是精简版,VB仍然支持面向对象编程(OOP)概念,如类、对象、继承、封装和多态性。用户可以创建自定义类并定义它们的行为和属性。 ### 4. **VB语言特性** - **变量和数据类型**:VB提供了各种内置数据类型,如...

    Visual Basic6.0精简版

    - **精简组件**:相比完整版,精简版移除了部分高级特性,如某些特定的控件、组件或服务,减少了对系统资源的需求。 - **更适合初学者**:对于初学者而言,精简版更便于理解和学习,因为它包含了VB6的基础核心功能...

    VB6精简安装版,仅6M,可编写activeX控件

    VB6的核心特性包括: 1. **可视化界面设计**:VB6提供了一个直观的拖放式用户界面设计工具,称为“表单设计器”。开发者可以通过拖放控件,如按钮、文本框、列表框等,来创建用户界面,大大简化了GUI(图形用户界面...

    c#学习 C_程序设计语言与面向对象基础精简教程.pdf

    多态则是面向对象的一大特性,它允许不同对象对同一消息做出不同的响应,增强了代码的灵活性。 此外,教程还会涉及C#中的异常处理,这是处理程序运行时错误的关键机制。通过try-catch语句,我们可以捕获并处理可能...

    VB6.0精简版

    在编程模型上,VB6.0采用了面向对象编程(OOP)的理念,尽管它的面向对象特性相比后来的.NET框架有所局限,但依然支持类、对象、继承、封装和多态等概念。此外,VB6.0内置了ADO(ActiveX Data Objects),使得数据库...

    vb精简版资源2.35753587

    VB精简版通常是为了满足那些只需要基础功能或者对系统资源有限制的用户而设计的,它在保留了VB核心功能的同时,去除了部分高级特性和不必要的组件,以降低软件的体积和系统需求。 在这个"vb精简版资源2.35753587"中...

    vb6.0精简版

    此外,它还支持面向对象编程,包括类、对象、继承、封装和多态性,尽管相对于现代的面向对象语言,VB6.0的OOP支持较为基础。 在VB6.0中,丰富的控件库是其一大特色。常见的控件如Label、TextBox、Button、ListBox等...

    Visual Basic 6.0 精简版

    12. **版本差异**:虽然"精简版"可能去除了某些高级特性,如某些数据库工具或组件,但它仍然能够完成基本的程序开发任务。相比于完整版,精简版可能更适合初学者学习和轻量级应用的开发。 Visual Basic 6.0虽然已经...

    Visual Basic 4.0安装包 精简版

    这个精简版的安装包旨在提供一个轻量级的开发环境,适用于那些对VB4.0功能有基本需求而不需要全部特性的用户。 Visual Basic 4.0的主要特性包括: 1. **面向对象编程**:VB4.0引入了完整的面向对象编程(OOP)支持...

    Java课件 简洁版 精简版

    第三章讲解了数组,这是存储同类型数据集合的重要结构。Java中的数组可以是一维、二维或多维的,理解数组的声明、初始化和操作对于高效编程至关重要。 第五章介绍了Java类库和常用类,这包括了Java标准库(Java API...

    【重要】C#编程语言与面向对象基础精简教程

    面向对象编程(OOP)是一种编程范式,它使用“对象”来设计软件应用。在面向对象编程中,程序和数据结构是用类和对象表示的,这些类和对象将数据以及可以对这些数据进行的操作封装起来。面向对象编程的四个主要原则...

    猛禽精简版:猛禽精简版

    1. **面向对象编程**:C++的核心特性之一是支持面向对象编程(OOP),通过类和对象,开发者可以更好地组织代码,实现封装、继承和多态,使得代码更易于理解和维护。 2. **模板和泛型编程**:C++的模板允许创建泛型...

Global site tag (gtag.js) - Google Analytics