ITPub博客

首页 > 数据库 > 数据库开发技术 > 【Python】面向对象编程—让你彻底理解类与对象

【Python】面向对象编程—让你彻底理解类与对象

原创 数据库开发技术 作者:阿黎逸阳的代码 时间:2021-03-09 07:00:00 0 删除 编辑
很多同学对面向对象编程只闻其名,未解其意。或者有部分了解,但一知半解。

本文致力于让大家从原理出发,彻底理解面向对象中的类和对象。


本文目录
  1. 类与对象的原理

    1.1 类与对象的定义

    1.2 类与对象的关系

    1.3 类名称的命名规则

    1.4 属性的定义

    1.5 方法的定义

  2. 类与对象的实例

    2.1  定义一个狗的类

    2.2  使用类定义对象的格式

    2.3  类中成员的访问


一、类与对象的原理

 1   类与对象的定义

类(class):用来描述有相同的属性和方法的对象的集合,是对象属性和行为的描述。比如:人、狗、猫等都可以抽象成类。
对象:类的具体实例。

 2   类与对象的关系

首先来看下简单类结构的定义:

伪代码如下:
class 类名称:    属性1的定义    属性2的定义    ....    属性n的定义    def 方法1(self, [其他参数]):        方法体中的代码    def 方法2(self, [其他参数]):        方法体中的代码        ....    def 方法n(self, [其他参数]):        方法体中的代码     
总体而言类是对象结构的定义和描述(类是对象的抽象),而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。
比如我们可以通过狗的特征来抽象描述狗这个类,但是对于不同的狗,如狗1、狗2、狗3,就是狗这个类中的具体对象。

 3   类名称的命名规则

  • ①:只能包含字母、数字、下划线,且不能以数字开头。
  • ②:不能是系统关键字或保留字。
  • ③:类名称首字母通常是大写。
  • ④:类名称中有多个单词时,通常采用驼峰命名法,如StudentDormitory。
  • ⑤:尽量做到见名知意。


 4   属性的定义

属性是类中存储数据的空间,可以是一个简单变量,也可以是一个复杂类型的数据,如列表、字典等。
类的属性分为两种,一种是类属性,另一种是实例属性。
类属性:定义在类中,但是在所有方法之外的属性。
实例属性:定义在类的方法中,以“self.变量名”的方式定义的变量。

 5   方法的定义

  • ①:方法是类中定义的函数,对数据进行处理。

  • ②:至少有一个形参self(可另取名)。
  • ③:其他方面与普通函数的定义相同。

二、类与对象的实例

 1   定义一个狗的类

平常我们见到狗一般有两个眼睛、一个嘴巴、一个口、一条尾巴、四条腿,会吃东西会叫。

我们把狗的这些特征抽象成类如下:

class Dog:    eyes = 2    #属性1的定义    nose = 1    #属性2的定义    mouth = 1    #属性3的定义    tail = 1    #属性4的定义    legs = 4    #属性5的定义    def eat(self):        print("最爱啃骨头")    #方法1    def bark(self):        print("汪汪汪")    #方法2


 2   使用类定义对象的格式

使用类定义对象的方法一般有如下两种:

  • ① 类名(),比如Dog()。

  • ② 对象名=类名(),比如dog1=Dog()。


 3   类中成员的访问

类中成员的访问分为访问属性和访问方法两种。

  • ① 访问属性

    方法一:类名.属性名,比如Dog.legs。

    方法二:对象名.属性名,比如dog1.legs。

  • ② 访问方法

    对象名.方法名(),比如dog1.eat()。

至此,面向对象中的类和对象已全部讲解完毕,感兴趣的同学可以自己到Python中实现一遍。

往期回顾:

情人节表白烟花

520表白代码合集
黑客帝国中的代码雨
用python绘制皮卡丘
娱乐圈排行榜动态条形图绘制
Python人脸识别—我的眼里只有你
3D星空图V2版——添加背景图片和音乐


扫一扫关注我

13162366985

投稿微信号、手机

原文作者:阿黎逸阳的代码;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-02-15

  • 博文量
    282
  • 访问量
    130884