java中抽象方法不能为private,final或者static,为什么?细细说明,或给个例子

 我来答
马克2000
推荐于2018-02-21 · TA获得超过117个赞
知道小有建树答主
回答量:179
采纳率:0%
帮助的人:158万
展开全部
4)抽象方法不能为private,final或者static,为什么?马克-to-win:抽象方法的最实质的意
义在于被未来的子类覆盖实现掉。它自己是个空方法。private的实质意义在于本类其他方法调用它。你自己是个空方法,别人调用你有什么用?所以
abstract和private在一起毫无意义。final规定子类不能再覆盖它。abstract是专等着要别人来覆盖,二者矛盾。所以不能放在一起
使用。有关static,我们上一章讲过:马克-to-win:static的成员是在程序执行到main时就已经确定的。要不为什么起
名叫静态static呢?而本章后面,我们要讲多态的动态方法调度。动态方法调度就是指在运行时才决定执行哪个方法(是子类的还是父类的)。比如运行时如
果用户输入自行车,就执行自行车的驾驶方法。马克-to-win:如果用户输入小轿车,就执行小轿车的驾驶方法,涉及到用户,这些都只能在运行时才能干。
而abstract一定用到动态方法调度。所以这静态和动态二者是矛盾的,不能一起用。因为道理是这样,所以当时sun公司的设计者就这样设计
了.。。。。。。。。。
详情网上找“马克-to-win”,参考他的网站或他的百度空间:java第三章的内容,如果实在找不到,按我下面说的地址找:

网站名是:mark-to-win.com
再附加上下边的路径地址: /JavaBeginner/JavaBeginner3_web.html#AbstractNotFinalPrivateStatic
秋天的程序员
2014-07-18 · TA获得超过215个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:135万
展开全部
抽象方法是为了让子类去实现方法内容,如果你声明为private或final,那就不能被继承或实现,这与java的继承或多态是矛盾的,你可以搜索java的继承或多态的特性,理解一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
andygulin
2014-07-18 · TA获得超过1678个赞
知道小有建树答主
回答量:1362
采纳率:0%
帮助的人:1114万
展开全部
private 只属于本类,其他类均无法访问,而抽象方法是要子类实现的
final 这个关键字本来的定义就是不能继承
static static方法修饰的方法是不能被继承,重写的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hks554488
2014-07-18 · TA获得超过395个赞
知道小有建树答主
回答量:593
采纳率:0%
帮助的人:456万
展开全部
一个抽象方法,肯定没法直接调用吧,必须得在子类中实现才行的。private、final、
或者static还怎么继承?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式