约 1199 字
约 6 分钟
对象的属性和方法是独立的,例如每一只猫都有自己独一无二的名字;而有些东西却是所有对象公共的,例如所有猫的生物学分类都属于“家猫”这一物种。
Python 中可以创建类的公共成员:
self
参数 类的公共成员也可以使用两个下划线开头的名称设为私有,只能通过类的公共方法或该类的对象的方法访问。
# 创建类
class Cat:
"""
猫类
"""
# 公共属性
kingdom = 'Animalia' # 界:动物界
phylum = 'Chordata' # 门:脊索动物门
class_ = 'Mammalia' # 纲:哺乳纲,因为 class 是 Python 的关键字,所以添加了一个下划线后缀
order = 'Carnivora' # 目:肉食目
family = 'Felidae' # 科:猫科
henus = 'Felis' # 属:猫属
species = 'Felis catus' # 种:家猫
# 公共方法,没有 self 参数
def taxonomy():
print(f"{Cat.kingdom}-{Cat.phylum}")
# 构造函数
def __init__(self):
pass
# 创建对象
tom = Cat()
garfield = Cat()
# 通过类和对象均可访问公共属性
print(Cat.kingdom)
print(tom.kingdom)
print(garfield.kingdom)
# 通过类修改公共属性
Cat.kingdom = 'unknown'
print(Cat.kingdom)
print(tom.kingdom)
print(garfield.kingdom)
# 不同通过对象修改公共属性
tom.kingdom = 'rate' # 实际上给 tom 添加了一个新属性
print(Cat.kingdom)
print(tom.kingdom)
print(garfield.kingdom)
# 通过类调用公共方法
Cat.taxonomy()
# 不能通过对象调用功能方法,因为会自动传递 self 参数
try:
garfield.taxonomy()
except:
print("无法调用 garfield.taxonomy")
Loading...
创建于 2025/5/7 22:00:24
更新于 2025/5/7 22:00:24