常量接口模式

常量接口模式

在一个软件系统中汇使用一些常量,一种流行的做法是把相关的常量放在一个专门的常量接口中定义,例如:

  

以下Circle类需要访问以上MATH_PI常量,一种方式是采用"My-Constants.MATH_PI"的形式,如下:

还有一种方式是让Circle类实现MyConstants接口,如下:

第二种方式使得Circle类继承了MyConstants接口的常量,因此在程序中可以直接引用常量名,无须指定MyConstants接口名,这可以简化编程.但是这种方式违背了面向对象的封装思想,MATH_PI常量是Circle类的实现细节中的一部分,仅仅在计算圆周长和圆面积是才会用到它,因此没有必要向外界公开MATH_PI常量.凡是实现MyConstants接口的类都会向外界公开MATH_PI常量,这其实是一种向外界泄露实现细节的行为,会削弱系统的可维护性.假定Circle类被100个其他的类访问,这些类都会访问Circle.MATH_PI常量,例如:

 

posted @ 2016-06-12 17:38  北城以北冬季飘雪  阅读(207)  评论(0编辑  收藏  举报