Python类和对象学习笔记(二)

# 1.类变量、实例变量、局部变量
"""
类变量(类属性):类体中、但在各个类方法外定义的变量。
实例变量(实例属性):类体中、所有函数内部,以“self.变量名”的方式定义的变量。
局部变量:类体中、所有函数内部,以“变量名=变量值”的方式定义的变量。
"""


class Student:
school = "xx小学" # 类变量

def __init__(self, name, grade):
self.name = name # 实例变量
self.grade = grade
print(name, "是", grade, "年级学生。")

def interest(self, content):
age = 13 # 局部变量
print("在{}读书。".format(self.school))
print("性格", content)
print("年纪", age)


student = Student("Lily", "6")
student.interest("活泼开朗")


# 2.类方法、实例方法、静态方法
"""
类方法:@classmethod 修饰
静态方法:@staticmethod 修饰
静态方法:不用任何修改的方法
"""


class Test:
# 类构造方法,也属于实例方法
def __init__(self):
self.name = "测试一下"
print(self.name)

# 下面定义了一个实例方法
def shili(self):
print("正在调用实例方法")

# 下面定义了一个类方法
@classmethod
def lei(cls):
print("正在调用类方法", cls)

# 下面定义了一个静态方法
@staticmethod
def jingtai(data):
print("正在调用", data, "静态方法")

test1 = Test()
test1.shili()
test1.lei()
test1.jingtai("试一下")


# 3.类调用实例方法
"""
用类的实例对象访问类成员的方式称为绑定方法;
而用类名调用类成员的方式称为非绑定方法。
"""


# 一个例子
class Study:
def thing(self):
print(self, "在学习")


Study.thing("li")
# 通过类名直接调用实例方法
# 但必须手动为该方法的第一个 self 参数传递参数
posted @ 2021-08-31 22:42  彩虹棉花糖  阅读(56)  评论(0)    收藏  举报