Python OOP 概念

原文:https://www.javatpoint.com/python-oops-concepts

像其他通用编程语言一样,Python 从一开始就是一种面向对象的语言。它允许我们使用面向对象的方法开发应用。在 Python 中,我们可以轻松创建和使用类和对象。

面向对象的范例是使用类和对象来设计程序。对象与真实单词实体相关,如书、房子、铅笔等。oops 概念侧重于编写可重用的代码。通过创建对象来解决问题是一种普遍的技术。

面向对象编程系统的主要原理如下。

  • 对象

  • 方法

  • 继承

  • 多态性

  • 数据抽象

  • 封装

班级

该类可以定义为对象的集合。它是一个逻辑实体,具有一些特定的属性和方法。例如:如果您有一个雇员类,那么它应该包含一个属性和方法,即电子邮件 id、姓名、年龄、工资等。

语法


class ClassName:
<statement-1>
.
.
<statement-N>

目标

对象是具有状态和行为的实体。它可以是任何真实世界的物体,如鼠标、键盘、椅子、桌子、笔等。

Python 中的一切都是对象,几乎一切都有属性和方法。所有函数都有一个内置属性 doc,它返回函数源代码中定义的 docstring。

当我们定义一个类时,它需要创建一个对象来分配内存。考虑下面的例子。

示例:


class car:
def __init__(self,modelname, year):
self.modelname = modelname
self.year = year
def display(self):
print(self.modelname,self.year)

c1 = car("Toyota", 2016)
c1.display()

输出:

Toyota 2016

在上面的例子中,我们已经创建了名为 car 的类,它有两个属性 modelname 和 year。我们已经创建了一个 c1 对象来访问类属性。c1 对象将为这些值分配内存。我们将在下一个教程中学习更多关于类和对象的知识。

方法

方法是与对象关联的函数。在 Python 中,方法不是类实例独有的。任何对象类型都可以有方法。

继承

继承是面向对象编程最重要的方面,它模拟了现实世界中的继承概念。它指定子对象获取父对象的所有属性和行为。

通过使用继承,我们可以创建一个使用另一个类的所有属性和行为的类。新类称为派生类或子类,而获取其属性的类称为基类或父类。

它提供了代码的重用性。

多态性

多态性包含两个词“聚”和“形”。多边形意味着很多,变形意味着形状。通过多态性,我们理解一个任务可以用不同的方式执行。比如——你有一个类动物,所有的动物都会说话。但是他们说话不同。在这里,“说话”行为在某种意义上是多态的,并且取决于动物。所以,抽象的“动物”概念实际上并不“说话”,而是具体的动物(如狗和猫)有一个具体实施的动作“说话”。

封装

封装也是面向对象编程的一个重要方面。它用于限制对方法和变量的访问。在封装中,代码和数据被包装在一个单元中,不会被意外修改。

数据抽象

数据抽象和封装都经常被用作同义词。两者几乎是同义词,因为数据抽象是通过封装实现的。

抽象用于隐藏内部细节,只显示功能。抽象事物意味着给事物命名,这样名字就抓住了一个函数或整个程序的核心。

面向对象和面向过程的编程语言

面向对象和面向过程编程的区别如下:

索引面向对象编程面向过程编程
1.面向对象编程是解决问题的方法,用于通过使用对象完成计算的地方。过程编程使用一系列指令来逐步进行计算。
2.它使开发和维护更加容易。在过程编程中,当项目变得冗长时,维护代码并不容易。
3.它模拟真实世界的实体。因此,现实世界的问题可以通过 oops 轻松解决。它没有模拟真实世界。它对被分成称为函数的小部分的逐步指令起作用。
4.它提供数据隐藏。所以它比过程语言更安全。您不能从任何地方访问私人数据。过程语言没有为数据绑定提供任何合适的方式,因此不太安全。
5.面向对象编程语言的例子是 C++、Java、。Net、Python、C#等。过程语言例子有:C,Fortran,Pascal,VB 等。