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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© eycrckag 中级黑马   /  2013-5-12 15:41  /  1832 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 刘胜寒 于 2013-5-14 13:31 编辑

为什么抽象方法必然是非静态的???

评分

参与人数 1技术分 +1 收起 理由
殇_心。 + 1

查看全部评分

10 个回复

倒序浏览
static 方法是类方法,它是不允许子类覆写(override)
而abstract方法是没有实现的方法,是必须由子类来覆写的。

评分

参与人数 1技术分 +1 收起 理由
刘胜寒 + 1

查看全部评分

回复 使用道具 举报
eycrckag 来自手机 中级黑马 2013-5-12 16:00:04
藤椅
哦,这样啊!看开是对静态方法理解不够深入!谢谢
回复 使用道具 举报
eycrckag 来自手机 中级黑马 2013-5-12 16:01:26
板凳
哦,这样啊!看开是对静态方法理解不够深入!谢谢
回复 使用道具 举报
eycrckag 来自手机 中级黑马 2013-5-12 16:02:00
报纸
哦,这样啊!看开是对静态方法理解不够深入!谢谢
回复 使用道具 举报
静态方法可以通过类调用,它修饰的属性和方法是属于本类,而与对象无关,所以不能子类被覆写,而抽象方法需要子类覆写它,二者是矛盾的。另外从逻辑上看,假设有一个静态的抽象方法,通过类调用了这个方法,这个抽象方法没有实现体,你不觉得很奇怪吗?这个调用有意义吗?希望你能明。

评分

参与人数 1技术分 +1 收起 理由
刘胜寒 + 1

查看全部评分

回复 使用道具 举报
如果是静态的,则可以直接类名.方法名,可问题是抽象方法并没有方法体,调用很明显是不合理的,必须在该抽象方法所在的抽象类的子类实现了该方法后才可以调用
回复 使用道具 举报
注意结贴。。。查看你们的帖子真的很耗时时间。。真心希望你们及时结贴。。真的很累。。
谢谢合作
回复 使用道具 举报
上面都说的很好了!!
回复 使用道具 举报
刘胜寒 发表于 2013-5-13 09:10
注意结贴。。。查看你们的帖子真的很耗时时间。。真心希望你们及时结贴。。真的很累。。
谢谢合作 ...

版主帮我多加了分,又处理掉了,版主工作量可见一斑。版主辛苦了!
回复 使用道具 举报
kaka小明 发表于 2013-5-14 09:33
版主帮我多加了分,又处理掉了,版主工作量可见一斑。版主辛苦了!

我都迷茫了。。还要不要当版主啊。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马