第19条:接口只用于定义类型

原创 2012年03月25日 22:00:09
当类实现接口时,接口就充当可以引用这个类的实例的类型(type)。
因此类实现了接口,就表明客户端可以对这个类的实例实施某些动作。为了其他目的而使用接口是不恰当的。


常量接口(constant interface),使用这些常量的类实现这个接口,以避免用类名来修改常量名。
常量接口模式是对接口的不良使用。
如果这些常量最好被看作枚举类型的成员,使用枚举类型。否则,应该使用不可实例化的工具类来导出这些常量。
工具类通常要求客户端用类名来修饰这些常量名。也可以使用静态导入,避免用类名修饰常量名。

相关文章推荐

第19条: 要像设计类型一样设计 class

与其它的面向对象编程语言类似,在 C++ 中,定义一个新的 class ,也就定义了一个新的type。一个 C++ 设计人员的大多数时间都会用在不断丰富充实他们的类型系统上(type system)。...

Effective java 第 19 条: 接口只用于定义类型

当类实现接口时,接口就充当可以引用这个类的实例的类型(type)。因此,类实现了接口,就表名客户端可以对这个类的实例实施某些动作。为了任何其他目的的而定义的接口是不恰当的。 有一种接口被称为常量接口(...

web idl 接口定义语言数据类型与 C++绑定关系

Modules Every IDL module corresponds to a C++ namespace. The name of that namespace is based on mod...

(转)定义接口类型的引用变量有什么好处?

原地址:http://www.cnblogs.com/chaohi/archive/2008/10/23/2330442.html 面向接口编程: 1, 在定义一个引用变量时,  心里想的应...
  • duyiqun
  • duyiqun
  • 2016年02月27日 13:36
  • 1170

Java_语法基础_定义规范的接口类型

接口,是一种完全抽象的设计,没有任何实现。接口有以下3个特征: 1.所有的成员变量都是public、static、final类型。 2.所有的方法都是public、abstract类型。 3.所...

AIDL接口自定义数据类型及Pracelable接口

在AIDL接口中除了可以使用java自带的数据类型外,还可以使用自定义的数据类型。如果需要使用自定义数据类型或List,Map中需要封装自定义数据类型需要以下几个步骤: 1.自定义的数据类型实现Pra...

c++自定义数据类型

  • 2017年01月15日 17:43
  • 207KB
  • 下载

jni.h中定义了一些方法,用于类型间的转换

jni.h中定义了一些方法,用于类型间的转换---zz (2011-11-18 22:41:32) 转载▼ 标签: 杂谈   boolean,byt...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第19条:接口只用于定义类型
举报原因:
原因补充:

(最多只允许输入30个字)