慕田峪5702042
2016-09-18 09:18
我想知道的接口与父类的差别不是,只能继承一个父类接口可以继承多个,而是接口的方法和属性到底跟父类之间啥关系
你可以有多个干爹(接口),但只能有一个亲爹( 继承)
我觉得你的问题问得很糟糕,让我感觉都不清楚你在问什么。你首先得吧自己要提出的问题说清楚。我们才能解答。不过根据我的猜测,你可能是想问子类实现了接口和继承父类时,对于方法的调用问题吧。
public interface IA { public void out(); } public class SA { public void out() { System.out.println("SA"); } } public class A extends SA implements IA { public static void main(String[] args) { new A().out(); } }
你会发现输出结果是SA。
可见子类中的out()方法是从父类来的。
注意:实现接口有个规则:接口中的方法在实现类中都要写出来,而这里却没有,所以大家应该注意到了,子类A中却没有,这是因为父类实现了这个方法。所以,只要父类中存在接口中的方法,只要没必要改动,就可以不用override了。
当然,可能你想问的不是这个,可以继续讨论。
方法上:理解接口首先理解抽象类,接口里面的方法是抽象方法(没有方法体的方法),接口是一种规范,特殊的抽象类。继承了接口就要实现里面方法(所有的方法)。相当于一种强制性的规定。而继承父类就看你用哪个方法就重写那个方法。属性上:接口中只有常量。
实现接口,就必须覆盖实现接口的方法。
而继承就不一定覆盖父类中的方法呀
还有接口和类本身就有区别
同时实现多个接口,用implements关键字就行了,多个接口间用,连接
你想问的是不是子类继承和接口实现的区别啊?
Java入门第二季 升级版
530644 学习 · 6091 问题
相似问题