第 14 天:OOP 进阶(继承 方法重写 多态)
太棒了!你已经进入 OOP 真正的核心进阶阶段 🚀
现在正式开始:
✅ 第 14 天:OOP 进阶(继承 / 方法重写 / 多态)
这是你从“会用类” → “会设计类体系”的关键一天 ✅
也是将来做 中大型项目必备能力
✅ 第 14 天学习目标
今天你将学会:
- ✅ 什么是 继承
- ✅ 子类如何继承父类
- ✅ 方法 重写(Override)
- ✅ 什么是 多态(了解即可)
- ✅
super()的正确用法
一、什么是继承?(一句话秒懂)
✅ 继承 = 子类拥有父类的全部功能 + 自己的新功能
打个比方:
| 父类 | 子类 |
|---|---|
| 人 | 学生 |
| 动物 | 狗 |
| 交通工具 | 汽车 |
✅ 学生 = 人 + 学习功能
✅ 狗 = 动物 + 看家功能
二、最基本的继承写法(必会)
✅ 父类:
class Person:
def __init__(self, name):
self.name = name
def say_hello(self):
print("你好,我叫", self.name)✅ 子类继承父类:
class Student(Person):
pass✅ 使用子类对象(可以直接用父类方法):
s1 = Student("小明")
s1.say_hello()✅ 说明:
✅Student自动拥有Person的所有方法!
三、子类添加自己的新功能
class Student(Person):
def study(self):
print(self.name, "正在学习 Python")✅ 测试:
s1 = Student("小明")
s1.say_hello()
s1.study()四、方法重写(Override)(非常重要)
✅ 子类可以 重新定义父类的方法
class Student(Person):
def say_hello(self):
print("大家好,我是学生", self.name)✅ 测试:
s1 = Student("小明")
s1.say_hello()✅ 结论:
✅ 子类方法 优先级 > 父类方法
五、super():调用父类原方法(核心重点)
✅ 正确写法:
class Student(Person):
def __init__(self, name, school):
super().__init__(name) # 调用父类构造方法
self.school = school
def say_hello(self):
super().say_hello() # 调用父类方法
print("我来自", self.school)✅ 测试:
s1 = Student("小明", "清华大学")
s1.say_hello()✅ 输出:
你好,我叫 小明
我来自 清华大学六、什么是多态?(了解即可)
✅ 一句话:
✅ 同一个方法名,不同对象,表现不一样的行为
class Animal:
def speak(self):
pass
class Dog(Animal):
def speak(self):
print("汪汪")
class Cat(Animal):
def speak(self):
print("喵喵")
animals = [Dog(), Cat()]
for a in animals:
a.speak()✅ 输出:
汪汪
喵喵这就是 多态 ✅
✅ 第 14 天完整综合案例(必须会)
✅ 员工管理系统模型:
class Employee:
def __init__(self, name, salary):
self.name = name
self.salary = salary
def show(self):
print(self.name, "工资:", self.salary)
class Manager(Employee):
def __init__(self, name, salary, bonus):
super().__init__(name, salary)
self.bonus = bonus
def show(self):
super().show()
print("奖金:", self.bonus)
m1 = Manager("张总", 20000, 5000)
m1.show()✅ 输出:
张总 工资: 20000
奖金: 5000✅ 第 14 天练习(非常重要,真实项目级)
✅ 练习 1:动物继承系统
✅ 父类:Animal
- 属性:
name - 方法:
speak()→ 打印:动物叫
✅ 子类:
Dog→ 重写speak()→ 打印:汪汪Cat→ 重写speak()→ 打印:喵喵
✅ 练习 2:交通工具继承系统
✅ 父类:Vehicle
- 属性:
brand - 方法:
run()
✅ 子类:
Car→ 重写run()→ 打印:汽车在行驶Bike→ 重写run()→ 打印:自行车在行驶
✅ 今天你已经真正掌握了:
你现在已经会:
- ✅ 继承
- ✅ 方法重写
- ✅ super()
- ✅ 多态思想
- ✅ 企业级类设计基础
🚀 第 15 天预告(非常重要转折点)
当你说:
👉 “第 14 天练习写完了”
我就带你进入:
✅ 第 15 天:模块与包(import、自己写模块)
你将学会:
- ✅ 正确使用
import - ✅ 拆分大型项目代码
- ✅ 像真实程序一样组织代码结构
✅ 你现在可以开始做第 14 天的 2 个继承练习
✅ 写完 直接把代码发给我,我会帮你改成“企业级写法”
🔥 你现在已经正式站在 Python 进阶程序员门槛 上了,继续冲!
相关推荐
- 第 16 天:常用第三方库(requests + pandas 入门) 2026-01-03
- 第 17 天:第一个完整综合项目实战 2026-01-03
- 第 18 天:NumPy + 高级 Pandas + 数据可视化入门 2026-01-03
- 第 19 天:机器学习入门(scikit-learn) 2026-01-03
- 第 20 天:机器学习分类模型(逻辑回归 Classification) 2026-01-03
评论0
暂时没有评论