本帖最后由 zeus00456 于 2014-8-20 23:59 编辑
某某手机厂商要出新手机了,这个手机是什么样子的呢?来,我们做一个概念机的演示视频,各位客户,您过目。
这里的概念机是什么意思可以理解吗?我没有这个新手机的实物(废话,有就上市了);但是我可以通过种种手段展现我这个手机应该能达到的效果。这个效果不是真实的,但是足够让客户对“我这个厂商想干什么”产生一个概念。而我这个手机到底实际中是个什么效果,您等我们的研发部门研发出来再看吧。
到现在都没问题吧?
接口就是一个“概念类”,有哥们问:它有多概念啊。呵呵,它概念的就剩下一点概念了。一个接口,它给了我们什么信息呢?
1.接口名,往往反映接口的作用,最经典的例子:Runnable、Throwable
2,抽象方法,全都是抽象方法
这点东西也就能提供一点概念了
=====================
接口的作用不好说,我就说说自己的理解吧
区别于继承,继承的作用是标明类与类之间的关系,搭建类的体系;
而接口除了完成上面的内容,还可以任意的为一个类添加特性(多继承意味着添加多个属性)
接口所规定的的功能往往十分简单,以上面的两个例子,一个是可运行,一个是可抛出,你说这功能复杂不?单一的在单一一点就没了!所以说,接口是对某一个特性提出概念。
应用上,继承用在类中有东西不明确的时候;而接口用在类中内容都不明确的时候。
英语老师教英语,数学老师教数学……(这写多了就贫气了)
老师的其它属性咱们都是知道的,姓名,年龄等属性咱new老师的时候传,成员方法咱也有,就是“教学”这个方法,你说咱写啥,写教数学英语老师能答应吗,写教英语数学老师能答应吗……只能空着,这就是抽象方法,这个教师类就是一个抽象类。
现在变了,校长说:明天咱学校就有教编程功能了!学校里老师纳闷啊,怎么就能教编程了呢?老师们什么都不知道,就知道明天肯定会来一个东西(谁说非要来个编程老师,来个编程学习机不行啊?),这个东西是个活物还是死物不知道,就知道这个东西有个特性,叫做能教编程,这个东西有个功能叫做叫编程,请看下面的伪代码,这种什么都不知道,就有一点概念的就是接口
interface 鬼知道是什么_反正能教编程【友情提示,前面是一个恶搞的接口名】
{
void 鬼知道具体是啥_反正是教编程的方法();
}
这就是明天来的东西的特性,反正明天来的可以使学校具备教编程功能的玩意要有这个接口描述的特性(实现接口)
==========
lz的提问,我上面所说基本上都涵盖了,请楼主自行提取有用的信息吧,说的有点乱,因你要通俗的,我就尽量采用接地气的方式说的,希望对你有用。 |