1单继承 2多实现 3 父子关系 1 is a 复用 2has a 扩展 面向修改是封闭的,面向扩展是开放的。 如果要扩展一个已有类,我们通常不会修改类的源码,而是新建一个类,继承该类,并实现扩展接口。