关于servlet的一个小问题

yuzhongwenren 2013-02-21 08:46:57
各位大神我今天遇到了一个奇怪的问题求解!!!
情况是这样的
比如有一个实现类 public class Dog extends Pet implements print
现在前面加了一个abstract 变成 public abstract class Dog extends Pet implements print
奇怪的是里面既可以写抽象方法又可以写实现方法!!!
抽象方法不是只能写方法体么,为什么这种情况能写实现方法呢!!
求解!!!
...全文
209 11 点赞 打赏 收藏 举报
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
终结i络 2013-02-23
可以呀; 你这是一个抽象类, 又不是一个接口类 当然可以实现了在抽象类里面的抽象方法了;;
  • 打赏
  • 举报
回复
GoldenDragon 2013-02-23
public abstract class Dog extends Pet implements print只是规定了这个类是个抽象类。 抽象类和接口类似,都是不可以自身实例化的一种结构封装。不同在于接口所有的方法都没有实现,只是定义了实现类必须实现的方法名称、参数和返回类型。而抽象类,它里面的抽象方法才是与接口方法相似的必须由子类必须实现的方法,如果子类不实现,子类也会被视为抽象类而不能实例化。但是抽象类里面的非抽象方法与具体的类中的方法相同,都是可以执行具体逻辑的方法,一般是所有继承类的公用方法,用于做一些最基本的事情,这是他与接口最大的不同,要是抽象类里面所有的方法都只能是抽象的,它就沦为接口类了。
  • 打赏
  • 举报
回复
jjxiaoxuan 2013-02-22
然后 就是来做 base 操作, 其他的话 建议用接口编程,至于在抽象类中 必须要有抽象方法, 但是也可以写实现的方法,此时这些方法应该是不需要 子类来继承的方法,所以这些知识点 还是要用到实际需求中,
  • 打赏
  • 举报
回复
jjxiaoxuan 2013-02-22
在java中一般抽象类是用来 做适配器
  • 打赏
  • 举报
回复
lvzg_005 2013-02-22
概念问题,抽象类可以有具体实现的哦
  • 打赏
  • 举报
回复
bluemoby 2013-02-22
你那是抽象类,抽象类最大的特点就是不能实例化。抽象类中可以有抽象方法也可以有非抽象方法;但有抽象方法的类必须定义为抽象类;抽象方法不提供方法体。
  • 打赏
  • 举报
回复
dxqrr 2013-02-22
这和servlet毛关系
  • 打赏
  • 举报
回复
yuzhongwenren 2013-02-21
楼上的意思是抽象类是针对于抽象方法只能是声明而不能实现,如果是实体的普通方法是可以实现的对伐???
  • 打赏
  • 举报
回复
licip 2013-02-21
抽象类中可以有抽象方法,也可以没有抽象方法。
  • 打赏
  • 举报
回复
rockets311 2013-02-21
抽象类本来就可以这样的
  • 打赏
  • 举报
回复
严洋羽 2013-02-21
抽象类本身就可以写实体方法的,你自己试试看会不会报错就知道了
  • 打赏
  • 举报
回复
相关推荐
发帖
Java EE
加入

6.7w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2013-02-21 08:46
社区公告
暂无公告