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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邓艳秋 中级黑马   /  2012-10-4 18:56  /  1352 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

最近上课遇到很多问题呀,抽象类,抽象方法。我想问,抽象方法想用的话一定要重写吗?这样多麻烦?为何不在要重写的类里直接定义一个属性,这样来得更快些吧?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

2 个回复

倒序浏览
代码少一点可以不用抽象和继承什么东东的,但是代码多了效果就明显了,
抽象方法一定要在继承类里重新的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
抽象方法要是用的话必须重写,其目的是
命名统一、规范,易于维护
比如猫和狗都继承动物这个类,动物类里面有吃饭的抽象方法,猫和狗就都要实现吃饭的方法,你怎么吃不管,但你就要叫这个名字,如果你不叫的话,吃饭的方法你也必须实现(可以使空实现,就是大括号里不写内容或return null)而且多态的好处你就不能体会到了。
当你定义了一个抽象类或者接口的时候,里面的抽象方法别人来实现,而你负责调用就好了,而方法名称都是统一的。
你说实现方法麻烦可以写成非抽象的方法继承啊。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马