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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

我们知道,一个子类继承某抽象类后,要想用它实例化对象,
则必须把抽象类中的抽象方法都具体化。
现在,假设A是个抽象类,其中有三个方法,a,b,c;
如果,B继承A,怎样让B只任意实现a,b,c其中一个即可
注:应该可以实现的,因为,javax.servlet包中的httpservlet就好像是一个这样的抽象类,
我们建一个类继承httpservlet,必须实现doGet,doPost,doPut,doDelete,init,destory,getServletInfo其中任意一个。

: )个人见解,望高手指正!谢谢




点评

警报楼主,请楼主不要复制百度贴吧的问题来刷分,http://tieba.baidu.com/f?kz=26570664,贴吧上已经有人回答过了。  发表于 2012-7-16 21:38

4 个回复

正序浏览
抽象类的特点:
   1,抽象类中可以有常量,但是常量不可以被抽象化(就是说不能被absrarct修饰)
   2,抽象类中可以没有抽象方法,但是这样做的目的,主要是不让创建对象
   3,抽象类中可以有一个或者多个抽象方法,如果子类要想实现该抽象类的抽象方法,子类必须复写父类中的所有抽象方法,如果没有复写父类中的所有抽象方法的话
      ,那么该子类就不能被创建对象,因为该子类还是一个抽象方法,自然而然,该子类就没办法实现父类的方法
所以必须复写父类的所有方法才可实现调用a,b,c中的任意方法
回复 使用道具 举报
你看错了,如果一个类继承一个抽象类,则必须实现其所有抽象方法,除非其也为抽象类
而你所说的那种貌似只覆盖了若干而非全部的方法的类,是因为它继承了一个实现了所有抽象方法的类。
httpservlet不是抽象类,你可以看下文档。
回复 使用道具 举报
http://tieba.baidu.com/f?kz=26570664
好好看看
回复 使用道具 举报
通俗易懂的来说
你可以先再定义一个类
C 让它继承A
C中的方法头均和A 中的一样
方法体均为空的
然后B继承C
就可以实现了

用抽象方法实现  还不如用接口来得快 而且你这个问题 是别人回答过的

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