Python__面向对象思想

目录

一、Python中的面向对象思想

二、类和对象


Python 是一种面向对象的编程语言,不过,Python 与 C++ 一样,还支持面向过程的程序设计。在 Python 中完全可以使用函数、模块等方式来完成工作。但是,当使用 Python 编写一个较为庞大的项目时,则应该考虑使用面向对象的方法,以便更好地对项目进行管理。面向对象程序设计(Object Oriented Programming)简称 OOP,是与面向过程的程序设计不同的另一种编程架构。

一、Python中的面向对象思想

面向对象程序设计是一种编程方法,强调对象的 "抽象"、"封装"、"继承" 和" 多态"。面向对象程序设计方法的基本思想是将任何事物都当做对象,是其所属于对象类的一个实例。对于复杂的对象则将其划分为简单的对象,由这些简单的对象以某种方式组合而形成复杂的对象。每一个对象都有其相对应的对象类,属于同一对象类的对象具有相同的属性及方法。

对象以对象类的形式将其内部的数据或者方法进行封装。对象与对象之间只是相互传递数据,而不能访问其他对象的内部,对象的内部对其他对象而言是不可见的。不同的对象类之间可以通过继承的形式来拥有其他对象的属性和方法,从而形成父子关系。

面向对象程序设计方法的基本过程如下:

  • Step1:确定对象及其属性和方法。
  • Step2:分析对象之间的联系,确定其通信机制。
  • Step3:将具有共同特征的对象抽象为对象类。
  • Step4:设计、实现类,并确定类相互间的继承关系。
  • Step5:创建对象示例,实现对象间的相互联系。

例如,可以将人作为一个对象类。每一个具体的人,如张三,则是一个对象实例。每个人都具有姓名、性别、年龄和身高等特征,可以将这些特征抽象为对象类的属性。

Python 完全采用了面向对象程序设计的思想。在 Python 中,可以使用类建立一个对象模型,以及对象所拥有的属性和方法。该模型能够较好地反映事物的本质,以及其相互之间的关系,其本质是更接近于人类认知事物所采用的计算模型。

Python 是真正面向对象的脚本语言,虽然其与 C++ 的类机制有所区别,但 Python 能够保证对类的最重要功能的支持,如类的继承、基类的重载等。

在 Python 中,对象概念比较广泛,对象不一定就是类的实例。Python 的内置数据类型如字符串、列表、字典等,他们都不是类,但却具有一些和类相似的语法。例如,使用 "." 操作符来使用内置类型的某些方法。

二、类和对象

类是面向对象程序设计的基础。类具有抽象性、封装性、继承性和多态性。

  • 类的抽象性:类是对具有共同方法和属性的一类对象的描述。
  • 类的封装性:类将属性和方法封装,外部是不可见,只有通过类提供的接口才能与属于类的实例对象进行信息交换。
  • 类的继承性:类可以由已有的类派生。派生出来的类拥有父类的方法和属性。
  • 类的多态性:类可以根据不同的参数类型调用不同的方法。同一个方法可以处理不同类型的参数。实际上,Python 的内部已经很好地实现了多态,在 Python 中,使用类不需要考虑太多不同类型之间的处理问题。

每个类都有自己的属性和方法。类的属性,实际上就是类内部的变量;而类的方法,则是在类内部定义的函数。

对象是具体的事物,是类的实例化结果。每个对象的属性值可能不同,但所有由同一类实例化得来的对象都拥有共同的属性和方法。在程序中,由类实例化生成对象,然后使用对象的方法进行操作,从而来完成任务。一个类可以实例化生成多个对象。类与对象的关系如下图所示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值