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

面试题 相关文章推荐
得到Class的三个过程是什么
Aug 10 面试题
新电JAVA笔试题目
Aug 31 面试题
怎么处理XML的中文问题
Mar 26 面试题
一套VC试题
Jan 23 面试题
写出程序把一个链表中的接点顺序倒排
Apr 28 面试题
一套SQL笔试题
Aug 14 面试题
OLEDBConnection和SQLConnection有什么区别
May 31 面试题
什么是跨站脚本攻击
Dec 11 面试题
shell程序中如何注释
Feb 17 面试题
Linux如何命名文件--使用文件名时应注意
May 29 面试题
Servlet的生命周期
Aug 25 面试题
如何理解transaction事务的概念
May 27 面试题
Jar包的作用是什么
Mar 30 #面试题
请说出几个常用的异常类
Jan 08 #面试题
JNI的定义
Nov 25 #面试题
如何提高JDBC的性能
Apr 30 #面试题
类的核心特性有哪些
Jan 01 #面试题
Java中compareTo和compare的区别
Apr 12 #面试题
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
Mar 14 #面试题
You might like
PHP-FPM之Chroot执行环境详解
2015/08/03 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
2020/04/13 PHP
php上传图片并给图片打上透明水印的代码
2010/06/07 Javascript
在IE 浏览器中使用 jquery的fadeIn() 效果 英文字符字体加粗
2011/06/02 Javascript
javascript nextSibling 与 getNextElement(node) 使用介绍
2011/10/13 Javascript
jQuery LigerUI 使用教程入门篇
2012/01/18 Javascript
Js-$.extend扩展方法使方法参数更灵活
2013/01/15 Javascript
JS远程获取网页源代码实例
2013/09/05 Javascript
js向上无缝滚动,网站公告效果 具体代码
2013/11/18 Javascript
php的文件上传入门教程(实例讲解)
2014/04/10 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
JavaScript实现的简单幂函数实例
2015/04/17 Javascript
jQuery实现带延迟的二级tab切换下拉列表效果
2015/09/01 Javascript
浅析JavaScript回调函数应用
2016/05/22 Javascript
bootstrap IE8 兼容性处理
2017/03/22 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
更改BootStrap popover的默认样式及popover简单用法
2018/09/13 Javascript
uni app仿微信顶部导航条功能
2019/09/17 Javascript
微信小程序实现录音功能
2019/11/22 Javascript
基于vue hash模式微信分享#号的解决
2020/09/07 Javascript
Python下的twisted框架入门指引
2015/04/15 Python
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
基于Python的关键字监控及告警
2017/07/06 Python
python计算两个矩形框重合百分比的实例
2018/11/07 Python
分析经典Python开发工程师面试题
2019/04/08 Python
Python3 tkinter 实现文件读取及保存功能
2019/09/12 Python
python+Django+pycharm+mysql 搭建首个web项目详解
2019/11/29 Python
Python数据可视化:顶级绘图库plotly详解
2019/12/07 Python
在python中计算ssim的方法(与Matlab结果一致)
2019/12/19 Python
纯CSS改变webkit内核浏览器的滚动条样式
2014/04/17 HTML / CSS
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
《最后的姿势》教学反思
2014/02/27 职场文书
交通局领导班子群众路线教育实践活动对照检查材料思想汇报
2014/10/09 职场文书
2014年无财产无子女离婚协议书范本
2014/10/09 职场文书
美德少年事迹材料(2016推荐版)
2016/02/25 职场文书
Python测试框架pytest核心库pluggy详解
2022/08/05 Golang