抽象方法能不能直接调用?
答案:3 悬赏:0 手机版
解决时间 2021-03-22 23:08
- 提问者网友:欲劫无渡
- 2021-03-22 20:13
抽象方法能不能直接调用?
最佳答案
- 五星知识达人网友:woshuo
- 2021-03-22 21:34
记住:抽象方法是不能调用的
原因就是抽象方法没有方法体。
但是,在一个类中定义了一个抽象方法,在这个类 或 这个类的子类 中是可以调用的。
为什么可以调用呢?
因为,具有抽象方法的类,一定是一个抽象类,
而抽象类在被继承的时候,必须重写这个抽象类的抽象方法,
而且,抽象类不能实例化,在使用这个抽象类的时候,使用的一定是这个抽象类的子类。
故,你在 抽象类 或 抽象类的子类 中可以使用这个抽象方法,是因为当真正实例化去使用的时候,使用的是子类重写后的实例方法。
原因就是抽象方法没有方法体。
但是,在一个类中定义了一个抽象方法,在这个类 或 这个类的子类 中是可以调用的。
为什么可以调用呢?
因为,具有抽象方法的类,一定是一个抽象类,
而抽象类在被继承的时候,必须重写这个抽象类的抽象方法,
而且,抽象类不能实例化,在使用这个抽象类的时候,使用的一定是这个抽象类的子类。
故,你在 抽象类 或 抽象类的子类 中可以使用这个抽象方法,是因为当真正实例化去使用的时候,使用的是子类重写后的实例方法。
全部回答
- 1楼网友:忘川信使
- 2021-03-22 23:58
简单地说,JAVA就这么规定的。追问你是从哪知道Java是这么规定的?
请详解!!!
3Q
请详解!!!
3Q
- 2楼网友:醉吻情书
- 2021-03-22 22:53
不能直接调用,需要实现了抽象方法才行。抽象方法只是给机一个写方法的规范追问我也是这么认为的,可是我遇到的问题,也就是我提的问题,确实存在,并且能够运行,还没有错,这是为什么?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
正方形一边上任一点到这个正方形两条对角线的 |
阴历怎么看 ? |