面向对象编程,在英文中称之为Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。
Python是一个纯天然面向对象的编程语言,在Python中,所有数据类型都可以视为对象。自定义的对象数据类型就是面向对象中的类(Class)的概念。
Python中使用
class关键字定义类,class之后为类的名称并以:结尾,类的结构如下:
class 类名(object):
代码块
......
下面定义一个Dog类,如下:
class Dog:
"实现一个小狗类"
def __init__(self, name, age) -> None:
self.name = name
self.age = age
def sit(self):
"小狗接收到蹲下指令"
print(f"{self.name} is now sitting")
my_dog = Dog("jack", 10)
my_dog.sit()
__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法。self代表类的实例,self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。
注意:
self不是 python 关键字,把它换成 runoob 也可以正常执行
C++中动态创建一个对象使用
new关键字,但是,在Python中没有该关键字。Python中使用类名通过类似函数调用的方式创建类对象,并通过__init__方法接收参数,例如:
class Dog:
"实现一个小狗类"
def __init__(self, name, age) -> None:
self.name = name
self.age = age
def sit(self):
"小狗接收到蹲下指令"
print(f"{self.name} is now sitting")
# 创建类对象
my_dog = Dog("jack", 10)
my_dog.sit()