接口中的方法可以是abstract的吗


Posted in 面试题 onJuly 23, 2015
Interface没有方法体,但是如果interface中有abstract接口,那么这个interface就必须为abstract 例子:
abstract public interface IA {
public void run() ;
abstract public void setParams() ;
}
abstract public class CBase implements IA {
public CBase() {}
abstract public String[] getParams() { }
public void run() {
String[] s = getParams();
if (s != null && s.length() > 0) {
for (int i=0; i System.out.println(“s[" + i + "]:” + s[i]));
}
}
}
}
public class CSub entexted CBase {
public CSub() {}
protected String[] s ;
public String[] getParams() {
return this.s ;
}
}
public class DSubSub extends CSub {
public DSubSub() {}
public void setParams() {
this.s = {“abcd”, “efg”} ;
}
public static void main(String[] args) {
IA dsubsub = new DSubSub() ;
dsubsub.run() ;
}
}

输出结果:
s[0]:abcd
s[1]:efg
CBase 类是所有电器产品总类,其中的run()函数负责输出某种电器产品的库存总价值。
CSub 类是所有小家电产品类,其中getParams()函数负责得到某种小家电产品库存总价值。
DSubSub类是小家电中的电吹风机类,其中的setParams()函数负责电吹风机的特有计算库存产品价值的方式。
当每一类电器产品都有自己不同的价值计算方式时,使用这种构架就可以很好的分类计算。
而这些业务逻辑实现类在三层构架中是不提供给客户端调用的,提供给客户端的仅仅是Interface,那么这种设计就是相当必要的。

Tags in this post...

面试题 相关文章推荐
请说出你所知道的线程同步的方法
Apr 19 面试题
输入N,打印N*N矩阵
Feb 20 面试题
存储过程和sql语句的优缺点
Jul 02 面试题
武汉高蓝德国际.net机试
Jun 24 面试题
什么情况下你必须要把一个类定义为abstract的
Jan 06 面试题
傲盾软件面试题
Aug 17 面试题
.net C#面试题
Aug 28 面试题
linux面试题参考答案(5)
Sep 01 面试题
Linux如何修改文件和文件夹的权限
Jun 27 面试题
排序都有哪几种方法?请列举。用JAVA实现一个快速排序
Feb 16 面试题
JAVA程序设计笔试题面试题一套
Jul 28 面试题
解释下面关于J2EE的名词
Nov 15 面试题
Jar包的作用是什么
Mar 30 #面试题
请说出几个常用的异常类
Jan 08 #面试题
JNI的定义
Nov 25 #面试题
如何提高JDBC的性能
Apr 30 #面试题
类的核心特性有哪些
Jan 01 #面试题
Java中compareTo和compare的区别
Apr 12 #面试题
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
Mar 14 #面试题
You might like
最省空间的计数器
2006/10/09 PHP
php下过滤HTML代码的函数
2007/12/10 PHP
PHP中通过加号合并数组的一个简单方法分享
2011/01/27 PHP
php+mysqli实现批量替换数据库表前缀的方法
2014/12/29 PHP
php+html5+ajax实现上传图片的方法
2016/05/14 PHP
基于PHP实现栈数据结构和括号匹配算法示例
2017/08/10 PHP
Yii框架组件的事件机制原理与用法分析
2020/04/07 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
JObj预览一个JS的框架
2008/03/13 Javascript
jquery复选框CHECKBOX全选、反选
2008/08/30 Javascript
js 效率组装字符串 StringBuffer
2009/12/23 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
2015/06/06 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
浅析Ajax语法
2016/12/05 Javascript
原生js实现手风琴功能(支持横纵向调用)
2017/01/13 Javascript
JS判断两个对象内容是否相等的方法示例
2017/04/10 Javascript
JavaScript高阶函数_动力节点Java学院整理
2017/06/28 Javascript
MUI 实现侧滑菜单及其主体部分上下滑动的方法
2018/01/25 Javascript
React BootStrap用户体验框架快速上手
2018/03/06 Javascript
Python模拟自动存取款机的查询、存取款、修改密码等操作
2018/09/02 Python
Python get获取页面cookie代码实例
2018/09/12 Python
详解pyenv下使用python matplotlib模块的问题解决
2018/11/29 Python
django mysql数据库及图片上传接口详解
2019/07/18 Python
Numpy中的数组搜索中np.where方法详细介绍
2021/01/08 Python
html5 视频播放解决方案
2016/11/06 HTML / CSS
工程造价专业大学生自荐信
2013/10/01 职场文书
工程力学硕士生的自我评价范文
2013/11/16 职场文书
体育运动口号
2014/06/09 职场文书
2015年公路路政个人工作总结
2015/07/24 职场文书
《平行四边形的面积》教学反思
2016/02/16 职场文书
简历中的自我评价怎么写呢?
2019/04/30 职场文书
Python 批量下载阴阳师网站壁纸
2021/05/19 Python
python机器学习实现oneR算法(以鸢尾data为例)
2022/03/03 Python
Python中的turtle画箭头,矩形,五角星
2022/03/16 Python