A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 张向辉 于 2013-1-16 11:26 编辑

abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

5 个回复

倒序浏览
本帖最后由 郑传庆 于 2013-1-5 13:18 编辑

abstract的method只能在abstract类里面定义,楼主说的问题,在抽象类里面定义的时候,编译器不会给过。建议楼主去理解下abstract的使用。网络上的人是这样总结的:
都不可以,因为abstract申明的方法是要求子类去实现的,abstract只是告诉你有这样一个接口,你要去实现,至于你的具体实现可以是native和synchronized,也可以不是,抽象方法是不关心这些事的,所以写这两个是没有意义的。然后,static方法是不会被覆盖的,而abstract方法正是要子类去覆盖它,所以也是没有意义的。所以,总的来说,就是java语法不允许你这样做,事实上,也没有意义这样做。


其实想这样的问题,最好的办法就是实践。自己去写出来,感受下就知道了

评分

参与人数 1技术分 +1 收起 理由
Rancho_Gump + 1 赞一个!

查看全部评分

回复 使用道具 举报
有意义吗? 抽象方法里面啥都没有。静态了做什么? 站着茅坑不拉屎。
回复 使用道具 举报
都不可以
回复 使用道具 举报
呵呵 不可以 楼上几位都已经说了
因为抽象方法只是声明而不去实现由子类来做具体实现,所以没有任何意义。
回复 使用道具 举报
   1,抽象方法不可被上述三个中的任意一个修饰,抽象方法只能被public或protected修饰,其他修饰符皆不可以。
   2,static是随着类加载而加载。而抽象方法是没有方法体的,要是也static的话,那就没什么意义了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马