为了账号安全,请及时绑定邮箱和手机立即绑定

java中当定义一个抽象方法时方法体为空,具体的类在覆盖时能否什么也不做即方法体仍为空?

java中当定义一个抽象方法时方法体为空,具体的类在覆盖时能否什么也不做即方法体仍为空?

嘟嘟的啦 2016-09-01 15:46:20
abstract public class Animal {    abstract public void roam();}public class Dog extends Animal {    public void roam() { }}
查看完整描述

4 回答

已采纳
?
摩诃迦叶

TA贡献146条经验 获得超54个赞


抽象方法是没有方法体,具体的类在覆盖时什么也不做是方法体为空,两者有差别的


查看完整回答
1 反对 回复 2016-09-01
  • 嘟嘟的啦
    嘟嘟的啦
    就是说像上例具体类在覆盖时可以写成public void roam() { }但不能是public void roam();对吧?另外,我想请教下子类在继承父类时父类的实例变量会继承,那实例变量的值呢?也会继承吗?
  • 嘟嘟的啦
    嘟嘟的啦
    那如果子类继承了父类某个public的实例变量,子类并没有对这个实例变量赋值,值会是父类的值还是null?
  • 摩诃迦叶
    摩诃迦叶
    父类赋值了,就是父类的值。
点击展开后面2
?
空城丶Dreams

TA贡献6条经验 获得超1个赞

可以!

查看完整回答
反对 回复 2016-09-01
?
疯子520520

TA贡献39条经验 获得超236个赞

直接敲出来编译看看不就知道了吗~

查看完整回答
反对 回复 2016-09-01
?
yanrun

TA贡献317条经验 获得超240个赞

可以是可以,但是如果这样的话也就没必要把这个方法变成抽象方法了吧。

查看完整回答
反对 回复 2016-09-01
  • 4 回答
  • 0 关注
  • 2336 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信