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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yangfengxiao 中级黑马   /  2012-9-30 11:49  /  1545 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 yangfengxiao 于 2012-9-30 13:11 编辑

是不是不管是实现还是继承,抽象方法都必须全部重写啊~~

新手,勿喷~~

3 个回复

倒序浏览
你把抽象类和接口中的抽象方法全实现了,你的类就是具体类。
如果你只实现个别抽象方法,而不是全部,你的类就必须用abstract修饰,因为没有完全实现抽象方法,所以还是个抽象的类。
所以并不是必须的,要不要完全实现所有的抽象方法,那要看具体情况。
回复 使用道具 举报
首先你要了解什么重写(重载)与覆盖
1.方法重载(override):在同一个类中定义多个同名不同形态方法,特点:参数个数或者类型,顺序必须不同。
2.方法覆盖(overload):子类应与父类具有完全相同的方法名,返回值,参数列表。

一般我们实现一个接口,都要覆盖接口里的所有方法,因为接口里只有抽象的方法和常量。
继承一个类,可以重载父类的方法,这个也是java多态的表现。

评分

参与人数 1技术分 +1 收起 理由
王海宇 + 1

查看全部评分

回复 使用道具 举报
PS:每次看到你问问题,我就很想笑,每次非要在后面加个什么  新手勿喷,那我请问你下,你自己是不是新手呢,你自己问的这些个问题  就明摆着告诉别人你自己就是一个非常非常菜的新手了,顺一便再说下,来着论坛的,大家应该水平都差不多吧。有问题大家一起讨论不就得了,搞的 自己很特殊一样。

回到正题,回答你的问题, 抽象方法是不是都要重写,我的答案是不一定,
看你继承或者实现的类是 一个什么类, 若是非抽象类,那你实现了一个接口,或者继承了一个抽象类,
那么就必须重写 其抽象方法。  但是若这个类是本身抽象类,那么这个类实现接口或者继承抽象类,里面的抽象方法就不用重写了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马