java中抽象方法不能为private、final或者static,为什么?

Python011

java中抽象方法不能为private、final或者static,为什么?,第1张

4)抽象方法不能为private,final或者static,为什么?马克-to-win:抽象方法的最实质的意\x0d\x0a义在于被未来的子类覆盖实现掉。它自己是个空方法。private的实质意义在于本类其他方法调用它。你自己是个空方法,别人调用你有什么用?所以\x0d\x0aabstract和private在一起毫无意义。final规定子类不能再覆盖它。abstract是专等着要别人来覆盖,二者矛盾。所以不能放在一起\x0d\x0a使用。有关static,我们上一章讲过:马克-to-win:static的成员是在程序执行到main时就已经确定的。要不为什么起\x0d\x0a名叫静态static呢?而本章后面,我们要讲多态的动态方法调度。动态方法调度就是指在运行时才决定执行哪个方法(是子类的还是父类的)。比如运行时如\x0d\x0a果用户输入自行车,就执行自行车的驾驶方法。马克-to-win:如果用户输入小轿车,就执行小轿车的驾驶方法,涉及到用户,这些都只能在运行时才能干。\x0d\x0a而abstract一定用到动态方法调度。所以这静态和动态二者是矛盾的,不能一起用。因为道理是这样,所以当时sun公司的设计者就这样设计\x0d\x0a了.。。。。。。。。。\x0d\x0a详情网上找“马克-to-win”,参考他的网站或他的百度空间:java第三章的内容,如果实在找不到,按我下面说的地址找: \x0d\x0a\x0d\x0a网站名是:mark-to-win.com\x0d\x0a再附加上下边的路径地址: /JavaBeginner/JavaBeginner3_web.html#AbstractNotFinalPrivateStatic

1.对象

2.数组

3.操作

4.类主体

5.初始化

6.返回值,方法名,参数列表

7.长度

8.没有

9.继承,多态

10.MyClass obj = new MyClass()

1,T

2T

3F

4F

5F

6F

7F

8T

9?

10F

11T

12F

13T

14T

15F

16F

17T

18T

19F

20T

21F

22T

23F

24T

25F

26T

27T

28F

29?