抽象类与接口分别在什么情况下用比较合适呢?我们设计程序的时候,用的最多的往往是接口,也提倡基于接口的编程;而抽象类却不常用,既然有抽象类,那么就一定有它的用处。比较懂的大虾解释一下!回答满意,立即结贴!
解决方案 »
- java MMS 流媒体协议怎么使用
- HashMap数据存放问题
- 刚学struts2 启动tomcat后 老出下面的问题 帮我看看!
- 有一道题,看不懂了
- Hibernate 外键容许空值,JSP如何取得外键的值。
- 请问xfire客户端如何能获得faultcode?
- 使用Axis2开发的web services 。用.net开发的client来调用。如何实现安全传输?
- 为什么我在JB中用会话Bean调用实体Bean的create方法向数据库中插入数据后,执行成功但数据库确定没有记录呢
- 寻求JAVA程序员
- eclipse的git 插件和svn插件有什么区别?
- 两个表中的数据显示在一个表中
- java处理大量字符串
把不能确定或者需要另外实现的方法再定义成抽象方法。比如一个加密算法,需要先对文字进行base64解码,然后再加密,
那么base64解码就可以写成不抽象的进行实际工作的方法,
而加密因为算法不同,可以定义成抽象方法,
让它的子类实现这个加密类的时候再进行实际的加密。其次,抽象类也作为一个程序辅助工具类,
比如
MouseAdepter和MouseListener的关系
good luck
一般重用比较多的都在service层 接口的应用
接口只是定义一个/组行为的规范或约定。抽象类对其所有子类提供通用的已实现功能;接口则是定义大范围内相互各异的对象间可共用的功能。抽象类主要用于关系密切的类,是对那些关系密切的类的抽象,多表示概念(比如从汽车,轿车、轮船、飞机等可以抽象出一个交通工具类,交通工具只是概念,现实中并不存在一个叫交通工具的实体,它只能是具体的轿车或飞机等;再比如说水果类,它也表示一种概念,具体到现实中,只能是苹果、梨、香蕉、桔子等中的一种,所以水果类也只能抽象类)而接口适合为不相关的类提供通用功能。抽象类主要用于设计大的功能单元;而接口主要用于设计小而简练的功能块。例如:
Window窗体可以用抽象类来设计,可以把公有操作和属性放到一个抽象类里,让窗体和对话框继承自这个抽象类,再根据自己的需求进行扩展和完善。另外,打印操作可以作为一个接口提供给每个需要此功能的窗体,因为窗体的内容不同,就要根据他们自己的要求去实现自己的打印功能。打印时只通过接口来调用,而不用在乎是那个窗体要打印。以上为拙见,请各位继续
因为我自己曾经也有过类型的问题。 这种非常概念性的东西。 当你不明白的时候。 你觉得很迷茫。 当你懂的时候,又会觉得非常简单。 学oop 我非常推荐上 www.jdon.com.