Python 面向对象编程入门
George Boorman
Curriculum Manager, DataCamp



$$\Large{\text{新类功能 = 旧类功能 + 额外功能}}$$




class BankAccount: def __init__(self, balance): self.balance = balance def withdraw(self, amount): self.balance -= amount# 继承自 BankAccount 的类 class SavingsAccount(BankAccount): pass
BankAccount:被扩展/继承功能的父类 SavingsAccount:继承并可扩展功能的子类# 构造函数从 BankAccount 继承
savings_acct = SavingsAccount(1000)
type(savings_acct)
__main__.SavingsAccount
# 属性从 BankAccount 继承
savings_acct.balance
1000
# 方法从 BankAccount 继承
savings_acct.withdraw(300)
SavingsAccount 是一个 BankAccount
(可能带有特殊功能)
savings_acct = SavingsAccount(1000)
isinstance(savings_acct, SavingsAccount)
True
isinstance(savings_acct, BankAccount)
True
acct = BankAccount(500)
isinstance(acct, SavingsAccount)
False
isinstance(acct, BankAccount)
True
Python 面向对象编程入门