Java

本类阅读TOP10

·使用MyEclipse开发Struts框架的Hello World!(录像1)
·hibernate配置笔记
·AOP编程入门--Java篇
·linux下Tomcat 5.0.20 与 Apache 2 安装/集成/配置
·在win2003下整合了整合Tomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
·构建Linux下IDE环境--Eclipse篇
·Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)
·ASP、JSP、PHP 三种技术比较
·Tomcat5.5.9的安装配置
·AWT GUI 设计笔记(二)

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
学习Tutorial心得(3_3)_Object-Oriented Programming Concepts

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

5.  接口

一个接口是一系列方法和常量集合的表现形式。当一个类实现了一个接口,就意味这个类实现了此接口声名的所有方法。

在英语中,一个接口是不相关的设备和系统相互作用的媒介。这个概念对于java同样适用,其实协议也可以看作是一种接口。

例如,在一个商店的目录管理程序中,对于自行车这个类,至少要有两个属性:id号和价格,但这两个属性如果放在自行车这个类中,目录管理程序如何访问呢?有两个方法,一是目录管理程序继承自行车这个类,这当然是离谱的;二是自行车提供getset方法,这是解决方法,但不是很好。为什么呢?id号和价格基本是每件商品的属性,别的商品(对象)当然也要提供,那么对与目录管理程序来说就不好处理了,它必须针对每个类来处理,而且它也无法得知要处理的类是否提供了这两个getset方法。如果把id号和价格放入接口中,则可以很好的解决这个问题,不妨称这个接口为目录接口,这样目录管理程序现在只需要处理一种对象:目录接口,没有了处理多个对象的麻烦,而且实现此接口的对象必然实现了setget方法。从这里也可以看出,构建类时主要考虑的是类本身的属性和方法,而构建接口时则主要考虑的是如何和其他对象的交互。好像有点辨正法的意思。

接口在以下地方是很有用的:

(1)       在没有联系的类中间扑获相似点,但是又不想它们之间产生联系时。
Capturing similarities among unrelated classes without 
	artificially forcing a class relationship
(2)       申明的方法是一个或者多个类期望实现的方法。(Declaring methods 
	that one or more classes are expected to implement
 (3)   想暴露方法(interface)却不想暴露这个方法所属的类时(Revealing an 
	object's programming interface without revealing its class)。
 



相关文章

相关软件