我发现java定义的接口,里面的方法必须全部都要重写,不然会编译报错,是这样吗?
2个回答
展开全部
不一定,看子类是否是抽象类。子类非抽象类,需要实现接口所有方法,子类是抽象类可以不实现接口所有方法。
追问
那重写方法的时候写与不写@Override有什么区别?
追答
@Override是伪代码,表示重写(当然不写也可以),不过写上有如下好处:
1、可以当注释用,方便阅读
2、编译器可以给你验证@Override下面的方法名是否是你父类中所有的,如果没有则报错比如你如果没写@Override而你下面的方法名又写错了,这时你的编译器是可以通过的(它以为这个方法是你的子类中自己增加的方法)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询