其实说句大实话,做一般的应用开发的,连接口都不太用,更加不用说是抽象类了,那些JJXX的程序员没事喜欢说接口什么的,面对抽象的程序设计,一个简单的问题你丫写那么多接口,有几个接口是有一个以上实现的?一个接口对应一个实现,一个实现对应一个接口,有毛病
但是如果你是写容器或者做框架的,比如spring框架,hibernate框这里面接口和抽象类就很有用的,去看看那些框架的源代码,抽象类一般都是对接口的一些方法进行了默认实现,不是完整的实现,完整实现由应用程序员来做,有很多抽象类本身是implements很多接口的,这样一来等于提供了个接口组合的有部分实现的超级接口了
恩,还有一种用法,^_^,是在hibernate中类与表互应用之间,可以定义一个抽象的POJO,比如员工是个抽象类,下面有2个实体类,老板,打工的,在查数据的时候如果你返回的是抽象类员工list和返回具体实现类老板的list,hibernate保证不一样的,前者会查整张表,后者会自动添加过滤条件
抽象类一般给子类提供模板方法。 呵呵,你可以看一下模板模式。 一般就是这种情况会用抽象类比较普遍。
接口一般是对外的,如果你将内部信息封装了,接口成了内部和外部的窗口。
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....