python就是一门面向对象的语言
面向对象编程(oop):object oriented programming
类与对象
类(class):用来描述具有相同的属性和方法的对象的集合。它定义了集合中每个对象所共有的属性和方法。
对象(object):也称为类的实例,是一个具体存在的实体。
类的定义
class 类名(父类名):
属性
方法
构造方法与实例化
作用:实例化对象
语法:def _init_(self,参数列表)
访问:类名(参数列表)
# 定义类
# class 类名(父类名):
# 属性
# 方法
class Human(object):
# 定义属性
message = "这是类属性"
# 定义构造方法
def __init__(self, name, age):
# 实例变量(实例属性)
self.name = name
self.age = age
print("这是构造方法")
# 通过类名访问类属性
print(Human.message)
# 实例化对象
people = Human("lili", 18)
# 通过实例访问实例属性
print(people.name)
# 通过实例访问类属性
print(people.message)
实例方法
作用:提供每个类的实例共享的方法
语法:def 方法名(self,参数列表)
访问:实例.方法名(参数列表)
class Human(object):
# 定义实例方法
def Test(self, play):
print(f"实例化参数是{play}")
# 实例化对象
people = Human()
# 通过实例访问实例方法
people.Test("making")
类方法
作用:可以操作类的详细信息,修改类属性
语法:@classmethod(装饰器)
访问:类名.类方法名(参数列表)
class Human(object):
# 定义类属性
sum = 0
# 定义类方法()
@classmethod
def Demo(cls):
print("这是类方法")
# 修改类属性
cls.sum += 1
# 通过类名访问类方法
Human.Demo()
print(Human.sum)
静态方法
语法:@staticmethod(装饰器)
class Human(object):
# 定义静态方法()
@staticmethod
def Make():
print("这是静态方法")
# 通过类名访问静态方法
Human.Make()