Java中,如果一个子类继承了一个类的同时实现了一个接口,超类和接口中都有同一个方法,哪一个会传给子类
如果实现的几个接口中都有同一个方法呢?调用时会是哪个方法?谢谢各位,多个接口的情况我弄清楚了。现在还是不确定的是:继承了一个超类实现了一个接口,如果超类中的A()方法是非...
如果实现的几个接口中都有同一个方法呢?调用时会是哪个方法?
谢谢各位,多个接口的情况我弄清楚了。
现在还是不确定的是:
继承了一个超类实现了一个接口,如果超类中的A()方法是非抽象的,接口中也有A(),那子类中还需不需要实现A()一次阿?
谢谢! 展开
谢谢各位,多个接口的情况我弄清楚了。
现在还是不确定的是:
继承了一个超类实现了一个接口,如果超类中的A()方法是非抽象的,接口中也有A(),那子类中还需不需要实现A()一次阿?
谢谢! 展开
展开全部
如果超类和接口具有相同的方法,调用的是接口的。因为接口的方法必须在该类中实现,实现后相当于子类覆盖了超类的方法
多个接口具有相同的方法,调用的是任意一个接口的方法,因为他们本来就一样,不管多少个接口,方法都必须实现,既然方法一样,实现时代码会是同一段
多个接口具有相同的方法,调用的是任意一个接口的方法,因为他们本来就一样,不管多少个接口,方法都必须实现,既然方法一样,实现时代码会是同一段
追问
请问
从父类继承来的实现了的方法不能算作实现了接口中的方法吗?
还是说必须在constructor中{super();}?
谢谢
追答
在子类中如果没有覆盖超类的方法,调用时用的是超类的,但接口(接口方法是必须要实现的)方法与超类相同时,实际上已经覆盖超类的了,所以调用的是接口的,或者说是超类的被覆盖了的
contructor中写不写都会有super()这么一句
你写段代码就明白了,理论要与实践结合
展开全部
晕,接口中没有方法具体实现,只是申明,不管你多少个接口中有同名方法,子类实现多个接口没什么问题啊,调用的是父类继承来的方法(子类没有重写)或者子类自己重写的方法,同时接口或父类的引用都可以访问子类的这个方法。如果你指的是返回值也不一样那就是语法错误了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在一个类中可以出现方法名相同的情况,但是不能出现返回值、方法名和参数类型以及参数个数都相同的情况,出现这种情况会出现编译错误。
方法在被调用时,JAVA虚拟机是根据方法的返回值、方法名和参数类型以及参数个数来识别同名方法的情况,即方法是以它们的属性、类型、参数来区分的。
所以你说的‘都有同一个方法’,应该是方法名相同的情况下,具体调用方法时,看你调用的方法的属性、类型和参数,与哪一个相符合就属于调用了哪个方法。
希望能帮到你,学习愉快!
方法在被调用时,JAVA虚拟机是根据方法的返回值、方法名和参数类型以及参数个数来识别同名方法的情况,即方法是以它们的属性、类型、参数来区分的。
所以你说的‘都有同一个方法’,应该是方法名相同的情况下,具体调用方法时,看你调用的方法的属性、类型和参数,与哪一个相符合就属于调用了哪个方法。
希望能帮到你,学习愉快!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果多个接口都有同一个方法 那么理路上调用这个方法的引用是哪个接口就调用这个接口实现的方法 不过实际上所有的接口的方法都是没有体的 所以无论这么调用都只有一个结果
如果父类继承了一个接口的话子类也会自动继承的
如果父类继承了一个接口的话子类也会自动继承的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果,子类覆写了超类的方法,那么。
子类.方法();
这个就是调用子类自己的方法。
如果子类没有覆写超类(父类)的哪个方法
子类.方法();
则是调用父类的哪个方法。
需要不需要拍个程序。如果需要请继承提问。
子类.方法();
这个就是调用子类自己的方法。
如果子类没有覆写超类(父类)的哪个方法
子类.方法();
则是调用父类的哪个方法。
需要不需要拍个程序。如果需要请继承提问。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询