CS50 Object-Oriented Programming
CS50’s Introduction to Programming with Python Lecture8
- 每个函数都要有
self
参数 __init__
函数:初始化函数__str__
函数:当对象被视作字符串时,自动调用此函数- getter函数,访问实例变量时自动调用该函数
1
2
3
def house(self):
return self.house - setter函数,更改实例变量时自动调用该函数
1
2
3
4
5
def hosue(self, house):
if house not in ["Gryffindor", "Hufflepuff", "Ravenclaw", "Slytherin"]:
raise ValueError("Invalid house")
self.house = house - 类的内部不能同时存在同名的实例变量与函数,因此实例变量通常以
_
开头。getter函数与setter函数的函数名没有_
,但是函数中实际操作以_
开头的实例变量 @classmethod
修饰符修饰类方法,self被替换为cls1
2
3
def sort(cls, name):
print(...)- 类变量直接在类定义中声明
- 运算符重载,参考官方文档
- 标题: CS50 Object-Oriented Programming
- 作者: 敖炜
- 创建于 : 2023-07-22 13:22:26
- 更新于 : 2024-04-19 09:31:00
- 链接: https://ao-wei.github.io/2023/07/22/CS50-Object-Oriented-Programming/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论