接口的功能描述?

sun*_*eep 3 oop interface

重复:接口:为什么我似乎无法掌握它们?

关于OOP,您如何描述界面?

我的意思是,子分类可以描述为"Has-A",继承可以是"Is-A".成员方法可以是"Can-Do"..

有没有什么方法可以扩展(没有双关语)来描述接口的作用?

谢谢

Bil*_*win 7

我认为对象是名词,方法是动词,接口是形容词(当然这个类比过于简单,但经常运作得很好).

示例:界面的Serializable工作方式类似于形容词,因为它将一些特性应用于实现该界面的对象,但不会更改该对象的内容.我们可以说,"这是一个可序列化的对象." 但我们并没有说,"这个对象是可序列化的",我们也不说,"这个对象具有可序列化的".

我也很喜欢Federico的答案,即界面是"CAN-DO".

接口是该类支持的一组相关操作.接口中的方法一起描述了类可以做什么.

就像名词可以采用多个形容词一样,一个类可以实现多个接口,只要它们不冲突即可.类实现的所有接口的并集是类可以执行的操作的总和.

实际上,接口是一组方法签名,没有代码实现这些方法.只是方法名称和参数.根据语言,方法签名还可以包括返回类型和抛出的异常.

接口由方法组成,但不包含数据成员.

顺便说一下,我不会说子分类是HAS-A.我的理解是子类与继承相同,所以这些都是IS-A.而HAS-A被称为聚合或组合.

  • 组合是对象拥有另一个对象的位置.摧毁外部物体也会破坏内部物体.示例:大学组成部门.关闭大学,各部门消失.

  • 聚合是对象包含另一个对象但不拥有它的位置.销毁外部对象不会破坏内部对象.示例:大学雇用教授,但关闭大学不会杀死教授.