您的位置  > 互联网

面向对象程序设计的三大原则之二——面向于类

事实上,java和.net都是面向对象的编程语言。 归根结底,它们都与面向对象密不可分。 那么什么是面向对象呢? 它意味着——将数据处理和对数据进行操作作为一种相互依赖的关系。 ,一个不可分割的整体,利用信息隐藏技术和数据抽象,更简单地解决现实生活中的问题!

上述概念比较抽象。 这就涉及到一个类的问题。 通俗地说,就是把一个东西抽象成一个类,这个类的实例就是对象。 类和对象的关系实际上就相当于设计图和实际对象的关系。 关系,面向对象其实就是面向类!

大对象三大特性:封装、继承、多态!

2. 基本概念

1. 封装

包装的含义其实很简单:就像你使用U盘时一样,U盘被包装在一个盒子里。 您不需要知道它是如何工作的。 您只需要知道如何使用它即可。 当然,使用时你使用的是USB接口。 ,调用封装类时,也是使用特定的接口!

2. 继承

继承是指一个对象从另一个对象获取属性的过程。 它是面向对象编程三大原则中的第二个。 它支持层次分类的概念。 例如,波斯猫是猫的一种,猫是哺乳动物。 一种哺乳动物就是一种动物。 如果不使用层次结构的概念,则每个对象都需要清楚地定义其所有特征。 通过层次分类,一个对象只需要在其所属的类中定义即可使其具有唯一性。 然后,每个属性都会从父类继承其通用属性。 因此,正是因为继承机制,一个对象才能成为一个通用类的具体实例。 深度继承的子类将继承其在类层次结构中的属性。 每个祖先的所有财产。

继承和封装可以相互作用。 如果给定的类封装了某些属性,则其任何子类都将包含相同的属性,以及每个子类的所有属性。 这就是面向对象编程的复杂性。 线性而非几何增长的重要概念。 新的子类继承其所有祖先的所有属性。 子类与系统中的其他代码之间不存在不可预见的交互。

3、多态性

多态性是指一种方法只能有一个名称,但可以有多种形式。 即程序中可以定义多个同名的方法,用“一个接口,多个方法”来描述。 可以通过方法的参数和类型来引用。 。

3、封装、继承与多态的关系

我举一个封装、继承、多态结合的例子:

在由封装、继承和多态组成的环境中,程序员可以编写比面向过程的模型更健壮和可扩展的程序。 精心设计的类层次结构是重用代码的基础。 封装使得程序程序员可以在不修改公共接口代码的情况下移植程序。 多态性使程序员能够开发出简洁、易于理解、易于修改的代码。 例如:汽车

从继承的角度来看,驾驶员依靠继承来驾驶不同类型(子类)的汽车。 无论汽车是轿车还是卡车,奔驰还是菲亚特,驾驶员都可以找到方向盘、手刹和变速杆。 经过一段时间的驾驶,大家都会知道手动挡和自动挡的区别,因为他们其实都知道两者共同的超类:变速器。

从包装的角度来看,驾驶员看到的总是包装好的功能。 刹车隐藏了很多复杂性,它的外观是如此简单,你可以用脚来操作它。 发动机、手刹、轮胎尺寸的实现与刹车类别的定义没有影响。

从多态性的角度来看,制动系统可分为正向锁定和反向锁定。 司机只需用脚刹车即可停车。 相同的接口可用于控制几种不同的实现(正向锁定或反向锁定)。

这样,每个独立的组件就转换成了汽车的对象。 同样,通过使用面向对象的设计原则,程序员可以将复杂程序的各个组件组合起来,形成一致、健壮且可维护的程序。