如何解决覆盖子类中的抽象方法
Test3类调用Test2的Cat()并实现两个Test2抽象方法。 我的问题是,如果我不向Test3中的抽象方法添加任何主体,是否覆盖了这些方法?我没有实现Dog()和Bird(),那么为什么Test3可以编译并运行?
谢谢
abstract public class Test2
{
abstract public void Dog();
abstract public void Bird();
public static void Cat()
{
System.out.println("Meow");
}
}
public class Test3 extends Test2
{
@Test
public void Play()
{
Cat();
}
@Override
public void Dog() {
// Todo Auto-generated method stub
}
@Override
public void Bird() {
// Todo Auto-generated method stub
}
}
解决方法
您的抽象方法无效,因此不返回任何内容,编译器希望该方法不返回任何内容,并通过添加已定义主体的花括号来实现;身体只是空的。
这类似于实现接口时,编译器唯一关心的就是您已履行合同。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。