本帖最后由 Faith_Yee 于 2014-9-30 10:07 编辑
毕老师说在Java中多继承不能实现,因为子类多继承了别的类,如果多个父类中有相同的变量或者方法,子类要执行时不知道执行哪一个父类方法或者变量。
然而,毕老师又说,Java中可以多实现接口,那么多实现接口,子类就不会产生冲突了吗?带着疑问测试了以下代码:- //多实现接口测试
- public class test1{
- public static void main(String[] args) {
- // TODO Auto-generated method stub
-
- C obj = new C();
- obj.show();
- }
- }
- interface A
- {
- void show();
- }
- interface B
- {
- void show();
- }
- class C implements A,B
- {
- public void show() {
- // TODO Auto-generated method stub
- System.out.println("S");
- }
- }
复制代码 发现可以打印。
那么印证了结论,我也可以理解为当多实现接口时,反正接口的方法是抽象的,不带内容,如果有相同的方法,那么在重写的过程中也不用在意执行哪一个,因为方法不带内容,只是抽象方法而已。因此这就是Java提供多实现的原因
|