首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Exception >

final修饰的方法不能被覆写

2014-01-26 
final修饰的方法不能被覆写。 那static的方法(应该叫类方法吧)能不能被覆写呢?? static的类呢,能在子类中ove

final修饰的方法不能被覆写
那static的方法(应该叫类方法吧)能不能被覆写呢??
static的类呢,能在子类中override吗?
 

------解决方法--------------------------------------------------------
很简单的回答:不能。
原因:override意味着多态,意味这不同的子类拥有不同的行为
而static意味着和具体实例相脱离,当然和多态不搭边了。
------解决方法--------------------------------------------------------
final定义的变量方法就不能再修改了,而static定义的是作为全局型的存在,可以改变。但地址不变。
------解决方法--------------------------------------------------------
想想还是darksmile 的 解释比较合理

------解决方法--------------------------------------------------------
static定义的变量及方法是可以改变的,定义为static型的只是地址不变而已
------解决方法--------------------------------------------------------
static静态的不能被覆写,也不能重栽,所以它也不能实现多态。
为什么呢?
因为静态的是隐藏的,它只属于当前类用。所以楼主切记。
无论是什么,只要是静态的,就符合此条件。
------解决方法--------------------------------------------------------
说简单点,多态的基础是动态绑定,所以对于静态(static)东西当然是不行的了
------解决方法--------------------------------------------------------
同意programer23(亮子)的观点
darksmile(darksmile)和programer23(亮子)
的观点不冲突
因为静态的是隐藏的,它只属于当前类用
无论是什么,只要是静态的,就不能被覆写
------解决方法--------------------------------------------------------
没错,static 是指地址的静态.
另外static定义的变量或方法不用实例化,应该可以说是隐藏的.所以也不能多态的.

        

热点排行