相关概念
面向对象编程是最有效的软件编写方法之一。
在python中创建一个类和对象是很容易的。
根据类来创建对象被称为实例化。
而,什么是类,什么是对象?
类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例
对象:类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法
创建和使用类
我们创建一个Student类
说明
根据约定,在Python中,首字母大写的名称指的是类
方法 __init__()
>方法__init__(),类中的函数称为方法,与我们前面介绍的函数同样的概念
>在2处的方法__init__()是一个特殊方法,每当根据类Student实例化时,Python都会自动运行它,相当于别的面向对象语言中的构造函数
>__init__()函数,开头和末尾各两个下划线,这是一种约定,旨在避免Python默认方法与普通方法发生名称冲突
>__init__()定了三个参数,self、name、score,注意的是self必不可少,还必须位于其他形参的前面
>每个与类相关联的方法调用都自动传递参数self,它是一个指向实例本身的引用,让我们能够访问类中的属性和方法
>当创建Student实例时,只需要给name、score这两个形参提供值
成员变量
>3.4处定义的两个变量都有前缀self。
>以self为前缀的变量,都可供类中的所有方法使用,也可以通过类的任何实例来访问这些变量,如9处
>self.name=name来获取存储在形参name中的值,并将存储到变量name中,然后该变量被关联到当前创建的类实例中
>可以定义类的变量,相当于C/C++语言的static变量,不加self,在类中定义一个变量就行,如:
普通方法printf_stu_info(self)
>跟以前介绍的函数没啥区别,就是多了个参数self
类的实例化
>在第7处,我们创建了一个名为”yang”的Student。Python执行这句话时,会自动调用__init__()方法,并把name,score属性赋相对来的形参name、score值
方法调用
>在第8处为对象调用类中的方法
访问属性
>在第9处为对象调用类中的属性,也可以修改类中的属性
Python析构函数
析构函数__del__(),__del__()在对象销毁的时候被调用,当对象不再被使用时,__del__()方法运行
面向对象重要的是抽象,封装,所以定义一个好的类很重要。
领取专属 10元无门槛券
私享最新 技术干货