引言:
面向对象编程(Object-Oriented Programming,简称OOP)是当代软件开发中广泛采用的一种编程范式。它以“对象”作为基本单位,强调对象的封装、继承和多态这三大特性,使得代码更加清晰、可维护且易于扩展.
1.面向对象的三大特性
1.1封装:
封装是把客观的事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是对象和类概念的主要特性,每个对象都包含它能进行操作所需要的所有信息,因此不必依赖其他对象来完成自己的操作。通过封装,可以实现代码的模块化和信息的隐藏,有利于保护数据的安全性和提高代码的可维护性。
1.2继承:
继承是从已有的类派生出新的类,新的类能继承已有类的属性和方法,并且可以在此基础上进行功能的扩展。继承支持按级分类的概念,通过继承创建的新类称为“子类”或“派生类”,被继承的类称为“父类”或“基类”。子类会自动拥有父类所有可继承和可见的属性和方法,同时子类还可以定义自己的属性和方法。这使得代码更加简洁、易于维护,并且提高了代码的复用性。
1.3多态:
多态是指一个类实例的相同方法在不同情形有不同表现形式。多态机制使具有不同内部结构的对象可以共享相同的外部接口。这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们可以通过相同的方式予以调用。多态的实现方式包括重写(override)和重载(overload)等。通过多态,可以使得程序更加灵活、可扩展,并且提高了代码的复用性和可维护性。
面向对象的三大特性,它们共同实现了代码的模块化、信息隐藏、代码复用和灵活性等目标,提高了软件开发的效率和质量。
接下来我将分享我自己关于面向对象三大特性的一点小小的理解.
2.继承的原理:
python为了实现继承,会在mro列表中从左到右查找父类,直到找到第一个匹配的位置,找不到则报错
在面向对象编程中,继承是一个核心概念,它允许我们创建一个新的类(称为子类或派生类)来继承另一个现有类(称为父类或基类)的属性和方法。子类继承父类后,将自动获得父类的所有非私有属性和方法,同时还可以定义自己特有的属性和方法。
2.1继承的基本概念
- 父类(Superclass):被继承的类称为父类。它定义了子类要继承的属性和方法。
- 子类(Subclass):继承父类的类称为子类。子类可以添加或覆盖父类的属性和方法。
2.2继承的特点
- 代码复用:继承允许子类重用父类的代码,避免了代码的重复编写