接口中的方法可以是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...

面试题 相关文章推荐
PHP如何自定义函数
Sep 16 面试题
如何设定的weblogic的热启动模式(开发模式)与产品发布模式
Sep 08 面试题
Eclipse面试题
Mar 22 面试题
什么是Deployment descriptors;都有什么类型的部署描述符
Jul 28 面试题
估算杭州有多少软件工程师
Aug 11 面试题
CLR与IL分别是什么含义
Aug 23 面试题
广州一家公司的.NET面试题
Jun 11 面试题
Linux如何修改文件和文件夹的权限
Sep 05 面试题
如何拷贝一整个Java对象,包括它的状态
Dec 27 面试题
下面代码从性能上考虑,有什么问题
Apr 03 面试题
编程用JAVA解析XML的方式
Jul 07 面试题
对象的序列化(serialization)类是面向流的,应如何将对象写入到随机存取文件中
Jun 22 面试题
Jar包的作用是什么
Mar 30 #面试题
请说出几个常用的异常类
Jan 08 #面试题
JNI的定义
Nov 25 #面试题
如何提高JDBC的性能
Apr 30 #面试题
类的核心特性有哪些
Jan 01 #面试题
Java中compareTo和compare的区别
Apr 12 #面试题
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
Mar 14 #面试题
You might like
PHP实现分布式memcache设置web集群session同步的方法
2018/04/10 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
2019/07/08 PHP
js css后面所带参数含义介绍
2013/08/18 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
JS画线(实例代码)
2013/11/20 Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
2013/11/25 Javascript
可自定义速度的js图片无缝滚动示例分享
2014/01/20 Javascript
js函数参数设置默认值的一种变通实现方法
2014/05/26 Javascript
JS在IE下缺少标识符的错误
2014/07/23 Javascript
node.js require() 源码解读
2015/12/13 Javascript
JavaScript自学笔记(必看篇)
2016/06/23 Javascript
js模块加载方式浅析
2017/08/12 Javascript
JavaScript中七种流行的开源机器学习框架
2018/10/11 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
详解Vue的watch中的immediate与watch是什么意思
2019/12/30 Javascript
详解JavaScript自定义函数
2020/07/29 Javascript
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
浅谈python的dataframe与series的创建方法
2018/11/12 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
使用selenium和pyquery爬取京东商品列表过程解析
2019/08/15 Python
python opencv如何实现图片绘制
2020/01/19 Python
Django model.py表单设置默认值允许为空的操作
2020/05/19 Python
Python调用飞书发送消息的示例
2020/11/10 Python
python time.strptime格式化实例详解
2021/02/03 Python
css3学习之2D转换功能详解
2016/12/23 HTML / CSS
anello泰国官方网站:日本流行包包品牌
2019/08/08 全球购物
《三峡》教学反思
2014/03/01 职场文书
2014年党员公开承诺践诺书
2014/03/25 职场文书
综合办公室主任岗位职责
2014/04/13 职场文书
2014基层党员批评与自我批评范文
2014/09/24 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
教师节主题班会教案
2015/08/17 职场文书
企业内部管理控制:银行存款控制制度范本
2020/01/10 职场文书
python爬不同图片分别保存在不同文件夹中的实现
2021/04/02 Python