继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

JAVA 接口化编程个人见解

拉丁的传说
关注TA
已关注
手记 568
粉丝 126
获赞 789

最近在重构老项目,其中使用了很多接口,达到了项目中业务逻辑层次结构清晰,解耦,在此,总结一下对JAVA接口理解的心得。

引言

一. 什么叫接口

接口(Interface),学习JAVA的人都知道,是由几个方法组成的集合,可以被其他的类继承,实现

例子:

interface Test {

    void A();

    void B(String parmse);

    ...

}

二.接口的作用及本质

(1)接口是一组规则集合,它规定了实现它的一系列类所共有的规范

举例说明:

    在真实生活中,人必须要睡觉。那么联系到程序中的时间,就是:

    人-------->Person.Interface;

    睡觉----->Sleep();

    那么就是,所有的表示人的类都要去实现Person这个接口,调用Sleep()方法,

    这就对应了真实世界中的“如果你是人,那么你就要睡觉”这个规则。

由此可以关联:面向对象的思想之一,就是模拟真实世界,把真实世界中的事件抽象成类,在程序中,每个类的实例相互协调,相互的交互通信,这很符合现实生活中的事例,这也是面向对象思想的精髓

(2)接口是一定的角度下同类事例的抽象表达

举例说明:

1)在真实的世界中,人和动物本不是相同的,但是如果在动物学砖家的眼中,人和动物就是同一类,因为他们都同属于Animal

2) 在真实的世界中,人和动物属于同类已经很蛋疼了,那么如何和小强,蚯蚓,细菌。。。是否也能够等同于同类呢?答案是肯定的,在生物学砖家眼中,人和小强,蚯蚓。。。都具有遗传特征。

以上两个例子充分的说明了接口存在的意义,他再一次体现了面向对象思想中的多态性,由此,我们可以把这种思考叫做面向接口思想。

面向接口属于面对对象,他是面向对象思想的核心之一。

面向接口

上面从真实世界中去转化了面对接口思路的实例,那么,在编程中,面向接口又是怎么样的?

一. 定义

个人见解:在面对系统及程序框架中,为了分层以及一些业务的依赖关系,我们通过定义一组组接口,向上层提供接口功能,而上层对于下层也仅仅是依赖提供的接口,不会去依赖具体的功能实现类。

二. 功能作用 
1) 使用面向接口编程,提供了极大的灵活性,当下层需要去改变需求的时候,只要保证接口及接口中不变, 
完全不用考虑是修改上层代码,甚至于可以全部修改下层。(目前的MVP也是一种面向接口的编码思想(个人见解)) 
2) 由于不用考虑下层,上层功能可以各自开发自己的,完全互不影响,提供效率。

总结: 
在实际的开发中,灵活的使用接口,确实可以给我们的程序开发带来便利,它是面向对象思想的一种具体化诠释。

<****** type="text/java******"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('

').text(i)); }; $numbering.fadeIn(1700); }); });

原文链接:http://www.apkbus.com/blog-913677-68255.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP