浅浅地上了几天 Java 的课程,然后怎么也想不明白:Java 不支持多继承有和接口到底是什么样的关系?
一只牛的故事。
// 叫的抽象基类 abstract class call{ } // 跑的抽象基类 abstract class run{ } // 一只牛会叫也会跑 class bull: call, run{ }
但是,对于 Java 上面这种是不行的!
不能多继承:一个类只能继承自一个基类,不同同时继承多个基类。
如果改为接口,
// 叫的接口 interface call{ } // 跑的接口 interface run{ } // 一只牛需要同时实现这两个接口,会叫也会跑 class bull inplements call, run{ }
这样就可以了。如果再添加新属性,只要在 implements 后加,就可以了。而不用去原来的代码。(开关原则)