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

面试题 相关文章推荐
以下的初始化有什么区别
Dec 16 面试题
C++是不是类型安全的
Feb 18 面试题
将一个数的从第5位开始的7个数取出,其余位置0
May 26 面试题
C#如何进行LDAP用户校验
Nov 21 面试题
常用UNIX 命令(Linux的常用命令)
Jul 10 面试题
中科创达面试题
Dec 28 面试题
为什么需要版本控制?
Aug 08 面试题
广州某公司软件工程师面试题
Dec 22 面试题
简单叙述一下MYSQL的优化
May 09 面试题
用Java语言将一个键盘输入的数字转化成中文输出
Jan 25 面试题
设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
Dec 30 面试题
Exception类的常用方法
Jun 16 面试题
Jar包的作用是什么
Mar 30 #面试题
请说出几个常用的异常类
Jan 08 #面试题
JNI的定义
Nov 25 #面试题
如何提高JDBC的性能
Apr 30 #面试题
类的核心特性有哪些
Jan 01 #面试题
Java中compareTo和compare的区别
Apr 12 #面试题
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
Mar 14 #面试题
You might like
ecshop实现smtp发送邮件
2015/02/03 PHP
8个必备的PHP功能开发
2015/10/02 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
理解Javascript_07_理解instanceof实现原理
2010/10/15 Javascript
jQuery 源码分析笔记(2) 变量列表
2011/05/28 Javascript
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
深入学习JavaScript中的原型prototype
2015/08/13 Javascript
学习JavaScript设计模式之策略模式
2016/01/12 Javascript
Bootstrap基本组件学习笔记之按钮组(8)
2016/12/07 Javascript
js实现横向拖拽导航条功能
2017/02/17 Javascript
微信小程序仿朋友圈发布动态功能
2018/07/15 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
vue给组件传递不同的值方法
2018/09/29 Javascript
基于Vue实现的多条件筛选功能的详解(类似京东和淘宝功能)
2019/05/07 Javascript
微信小程序云开发使用方法新手初体验
2019/05/16 Javascript
微信小程序将页面按钮悬浮固定在底部的实现代码
2020/10/29 Javascript
2018年Python值得关注的开源库、工具和开发者(总结篇)
2018/01/04 Python
小米5s微信跳一跳小程序python源码
2018/01/08 Python
Python加载带有注释的Json文件实例
2018/05/23 Python
详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
2019/08/27 Python
python3实现单目标粒子群算法
2019/11/14 Python
Python终端输出彩色字符方法详解
2020/02/11 Python
pandas DataFrame 数据选取,修改,切片的实现
2020/04/24 Python
使用Python pip怎么升级pip
2020/08/11 Python
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
公司离职证明范本
2014/01/13 职场文书
小学运动会广播稿200字(十二篇)
2014/01/14 职场文书
执行总经理岗位职责
2014/02/03 职场文书
科学发展观演讲稿
2014/09/11 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
幼儿园开学家长寄语(2015秋季)
2015/05/27 职场文书
阿甘正传观后感
2015/06/01 职场文书
采购部2015年度工作总结
2015/07/24 职场文书
MySQL分区表管理命令汇总
2022/03/21 MySQL