引言
像java一样,Python语言诞生之初就是一门面向对象的语言,利于类和对象来解决问题,接下来就来介绍一下Python的面向对象的相关内容
介绍
类:用来描述具有相同的属性和方法的对象集合,它定义了该集合中每个对象的共有属性和方法,对象是类的实例化
类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外,通常不作为实例变量使用
数据成员:类变量或者实例变量,用于处理类及其实例对象的相关数据
方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫做方法的覆盖,也称重写
实例变量:定义在方法中的变量,只作用于当前实例的类
继承:指一个派生类继承基类的字段和方法,继承也允许将一个派生类作为一个基类对象对待
实例化:创建一个类的实例,一个类的具体对象
方法:类中定义的方法
对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法
定义语法
类必须定义之后才能进行使用,定义一个类就是定义一类对象的模板,格式如下:
class [类名]:
[语法块]
类的使用
在使用类之前需要将类实例化成为对象,创建对象和创建变量类似,先要声明对象是哪个类,同时指明变量名称
class EmptyClass:
pass
empty = EmptyClass()
print(type(empty))
执行的结果为
<class "_main_.EmptyClass">
类的构造方法
在创建实例时,很多类可能都需要初始状态,所以,一个类可以定义一个特殊的方法,叫做构造方法,构造函数就是类的__init__方法
class Dog:
def __init__(self):
print("hello")
dog = Dog()
执行的结果为
hello
注意,在类实例化时自动调用构造方法,并且构造函数的第一个参数必须为self,不能漏掉,构造函数的返回值必须为None
类的属性
在构造方法中我们可以初始化一些属性
class Dog:
def