数据结构论坛

首页 » 分类 » 问答 » python类和实例化
TUhjnbcbe - 2024/7/29 17:00:00
北京治白癜风什么医院好 https://disease.39.net/yldt/bjzkbdfyy/

从开始学习Python我们就知道它是一门面向对象的语言,先来简单的了解下面向对象的一些基本特征。

类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。数据成员:类变量或者实例变量用于处理类及实例对象相关的数据。方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。实例变量:定义在方法中的变量,只作用于当前实例的类。继承:即一个派生类(derivedclass)继承基类(baseclass)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,大黄生自一条狗,所以大黄是一条狗。实例化:创建一个类的实例,类的具体对象。方法:类中定义的函数。对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。面向对象最重要的概念就是类(Class)和实例(Instance),

类和模块差不多,我们通过模块可以存储一些代码,并通过“.”运算符访问这些代码,类说:俺也一样!

类实例1

class后面接着是类名(中间有空格)即MyPy,类名通常是大写开头的单词,紧接着是(object),表示该类是从哪个类继承下来的,继承的概念我们后面再讲,通常如果没有合适的继承类,就使用object类,这是所有类最终都会继承的类。定义好了MyPy类,就可以根据类创建出MyPy的实例,创建实例是通过类名+()实现的(实例1第5行),创建好实例我们就可以调用类中的方法(实例1第6行)

是不是感觉类有些复杂,这完全可以用模块去代替呀!使用类而非模块的原因是类可以重复创建很多出来,而模块一次导入之后程序里就只有这一份内容

类实例2

上例中可能比较难理解的就是__init__(左右各是两个下划线组成的),它的作用是初始化已实例化后的对象,注意到__init__方法的第一个参数永远是self,表示创建的实例本身,因此,在__init__方法内部,就可以把各种属性绑定到self,因为self就指向创建的实例本身。有了__init__方法,在创建实例的时候,就不能传入空的参数了,必须传入与__init__方法匹配的参数,但self不需要传,Python解释器自己会把实例变量传进去。

类实例3

要定义一个方法,除了第一个参数是self外,其他和普通函数一样。要调用一个方法,只需要在实例变量上直接调用,除了self不用传递,其他参数正常传入。

类的概念比较抽象,这篇文章部分参考了#廖雪峰的官方网站#。

感谢阅读

1
查看完整版本: python类和实例化