照着书写的怎么还有错JAVA
单看你这代码没问题,运行也没问题。
我看你这有红点,自己看下是什么报错信息
另,楼下说下那个接口没有声明public的,接口的方法默认就是public,不需要手动声明。
@Override是规范写法,用于告诉编译器这个方法是重写父类,但是也不是必须的,不会导致你代码出错。用Animal来接收Dog也不是根本原因。我建议你在20行断点,看看dog这个对象到底是不是用到你上面声明的那个Dog。