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

面向对象编程范例的核心思想是使用类和对象来设计程序。对象与现实世界中的实体相关,例如书、房子、铅笔等。面向对象编程的概念侧重于编写可重复使用的代码,它是通过创建对象来解决问题的广泛技术。

面向对象编程系统的主要原则如下:

  • 类(Class)
  • 对象(Object)
  • 方法(Method)
  • 继承(Inheritance)
  • 多态(Polymorphism)
  • 数据抽象(Data Abstraction)
  • 封装(Encapsulation)

类(Class)

类可以定义为对象的集合。它是一个逻辑实体,具有一些特定的属性和方法。例如:如果你有一个员工类(employee class),那么它应该包含一个属性和方法,如电子邮件地址、姓名、年龄、薪水等。

语法

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

对象(Object)

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

在Python中,一切都是对象,几乎每个对象都有属性和方法。所有函数都有一个内置属性__doc__,它返回函数源代码中定义的文档字符串。

当我们定义一个类时,需要创建一个对象来分配内存。请考虑以下示例。

示例:

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的类,它具有两个属性modelnameyear。我们创建了一个c1对象来访问类属性。c1对象将为这些值分配内存。我们将在下一个教程中更多地了解类和对象。

方法(Method)

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

继承(Inheritance)

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

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

它提供了代码的可重用性。

多态(Polymorphism)

多态包含两个词“poly”和“morphs”。Poly意味着许多,morph意味着形状。通过多态,我们了解到一个任务可以以不同的方式执行。例如 - 你有一个动物类,所有动物都会说话。但是它们说话的方式不同。在这里,“说话”行为在某种程度上是多态的,并且取决于动物。因此,抽象的“动物”概念实际上并不“说话”,但具体的动物(如狗和猫)对“说话”操作有一个具体的实现。

封装(Encapsulation)

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

数据抽象(Data Abstraction)

数据抽象和封装通常被视为同义词。它们几乎是同义词,因为数据抽象是通过封装实现的。

抽象用于隐藏内部细节,仅显示功能。抽象化某物意味着为事物赋予名称,以便名称捕捉函数或整个程序执行的核心。

面向对象 vs. 面向过程编程语言

面向对象编程与面向过程编程之间的区别如下:

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

标签: Tkinter教程, Tkinter安装, Tkinter库, Tkinter入门, Tkinter学习, Tkinter入门教程, Tkinter, Tkinter进阶, Tkinter指南, Tkinter学习指南, Tkinter进阶教程, Tkinter编程