Java中,如果一个子类继承了一个类的同时实现了一个接口,超类和接口中都有同一个方法,哪一个会传给子类

2024-11-24 15:34:48
推荐回答(5个)
回答1:

如果超类和接口具有相同的方法,调用的是接口的。因为接口的方法必须在该类中实现,实现后相当于子类覆盖了超类的方法

多个接口具有相同的方法,调用的是任意一个接口的方法,因为他们本来就一样,不管多少个接口,方法都必须实现,既然方法一样,实现时代码会是同一段

回答2:

晕,接口中没有方法具体实现,只是申明,不管你多少个接口中有同名方法,子类实现多个接口没什么问题啊,调用的是父类继承来的方法(子类没有重写)或者子类自己重写的方法,同时接口或父类的引用都可以访问子类的这个方法。如果你指的是返回值也不一样那就是语法错误了

回答3:

在一个类中可以出现方法名相同的情况,但是不能出现返回值、方法名和参数类型以及参数个数都相同的情况,出现这种情况会出现编译错误。
方法在被调用时,JAVA虚拟机是根据方法的返回值、方法名和参数类型以及参数个数来识别同名方法的情况,即方法是以它们的属性、类型、参数来区分的。
所以你说的‘都有同一个方法’,应该是方法名相同的情况下,具体调用方法时,看你调用的方法的属性、类型和参数,与哪一个相符合就属于调用了哪个方法。
希望能帮到你,学习愉快!

回答4:

如果多个接口都有同一个方法 那么理路上调用这个方法的引用是哪个接口就调用这个接口实现的方法 不过实际上所有的接口的方法都是没有体的 所以无论这么调用都只有一个结果
如果父类继承了一个接口的话子类也会自动继承的

回答5:

如果,子类覆写了超类的方法,那么。
子类.方法();
这个就是调用子类自己的方法。

如果子类没有覆写超类(父类)的哪个方法
子类.方法();
则是调用父类的哪个方法。

需要不需要拍个程序。如果需要请继承提问。