面向对象的概念
Python OOPs概念
与其他通用语言一样,python从一开始就是一种面向对象的语言。Python是一种面向对象的编程语言。它允许我们使用面向对象的方法开发应用程序。在Python中,我们可以轻松地创建和使用类和对象。
面向对象编程系统的主要原理如下。
Object对象
Class
Method
Inheritance
Polymorphism
Data Abstraction
Encapsulation
Object
该对象是具有状态和行为的实体。它可能是任何现实世界的对象,如鼠标,键盘,椅子,桌子,笔等。
Python中的所有东西都是一个对象,几乎所有东西都有属性和方法。所有函数都有一个内置属性__doc__,它返回函数源代码中定义的doc字符串。
类
该类可以定义为对象的集合。它是一个逻辑实体,具有一些特定的属性和方法。例如:如果您有一个员工类,那么它应该包含一个属性和方法,即电子邮件ID,姓名,年龄,工资等。
句法
class ClassName: <statement-1> . . <statement-N>
方法
该方法是与对象相关联的函数。在Python中,方法并不是类实例所特有的。任何对象类型都可以有方法。
继承
继承是面向对象编程的最重要方面,它模拟了现实世界的继承概念。它指定子对象获取父对象的所有属性和行为。
通过使用继承,我们可以创建一个使用另一个类的所有属性和行为的类。新类称为派生类或子类,其属性获取的类称为基类或父类。
它提供了代码的可重用性。
多态性
多态性包含两个词“poly”和“morphs”。Poly意味着很多,Morphs意味着形状,形状。通过多态,我们理解一个任务可以以不同的方式执行。例如,你有一个类动物,所有的动物说话。但他们说的不一样。在这里,“说话”行为在某种意义上是多态的,取决于动物。因此,抽象的“动物”概念实际上并不“说话”,但特定动物(如狗和猫)具有“说话”动作的具体实施。
封装
封装也是面向对象编程的一个重要方面。它用于限制对方法和变量的访问。在封装中,代码和数据在一个单元内被包装在一起,不会被意外修改。
数据抽象
数据抽象和封装都经常用作同义词。两者几乎是同义词,因为数据抽象是通过封装实现的。
抽象用于隐藏内部细节并仅显示功能。抽象事物意味着给事物命名,以便名称捕获函数或整个程序的核心。
面向对象与面向过程的编程语言对比
SN | 面向对象编程 | 面向过程编程 |
1 | 面向对象编程是解决问题的方法,用于通过使用对象进行计算的地方。 | 程序编程使用指令列表逐步进行计算。 |
2 | 它使开发和维护更容易。 | 在程序编程中,当项目变得冗长时,维护代码并不容易。 |
3 | 它模拟现实世界的实体。因此,通过oops可以轻松解决现实问题。 | 它不模拟现实世界。它适用于逐步指令,分为称为函数的小部分。 |
4 | 它提供数据隐藏。因此它比程序语言更安全。您无法从任何地方访问私人数据。 | 过程语言没有为数据绑定提供任何正确的方法,因此它不太安全。 |
5 | 面向对象编程语言的例子是C ++,Java,.Net,Python,C#等。 | 过程语言的例子有:C,Fortran,Pascal,VB等。 |