一张卡片持有一份尺寸
三个形状:长方形 3×4、正方形边长 5、三角形底 6 高 5。Card **持有**一个 Size,而不是继承它: class Size: """一份尺寸,自己管自己的校验""&q
⚠️ 换掉里面那个零件,外面一行没改
换一种尺寸塞进去。Card 一个字都没动。 class Size: """一份尺寸,自己管自己的校验""" def __init__(self, w, h):
自己写:让卡片持有一份尺寸
把 Card 补完——它持有尺寸,不继承尺寸。
⚠️ 同一个外壳,塞三种零件
三个形状:长方形 3×4、正方形边长 5、三角形底 6 高 5。用同一个 Card 类做出三张卡片,标题依次是 甲、乙、丙。
🔴 继承 list 做栈,把不该有的也带来了
两个栈:一个继承 list,一个持有 list。看看后者有没有把 insert 也暴露出去。
多态到底省掉了什么
用多态之后,代码里少掉的是【0】。
⚠️ 抽象方法里 raise 是干什么的
父类的方法体里写 raise NotImplementedError,用意是【0】。
Python 里要不要非得继承同一个父类
要让几个类能被同样地使用,在 Python 里【0】。
三个形状,一句话算完
三个形状:长方形 3×4、正方形边长 5、三角形底 6 高 5。三个类各自实现 area,调用方一句类型判断都没有: class Shape: """只承诺一件事:能算面积""&qu
自己写:让两个子类各自实现 area
三个形状:长方形 3×4、正方形边长 5、三角形底 6 高 5。父类已经把承诺立好了,把两个子类补完。