1、遇到两种或者多种实例风格的类
- 比如:同时表示矩形或圆形的类
- 这种标签类有着许多缺点
- 充斥着样板代码,破坏了可读性
- 标签类过于冗长、容易出错、效率低下
2、子类型化能更好的表示多种风格对象的单个数据类型
- 标签类是类层次的一种简单效仿
- 提取公共域和方法为抽象类
3、类层次能反应类型之间本来的层次关系
- 如果表示正方形,进一步扩展层次
4、标签类很少有适用的时候
- 如果使用了标签类,请考虑是否可以被取消,被层次类代替
1、遇到两种或者多种实例风格的类
2、子类型化能更好的表示多种风格对象的单个数据类型
3、类层次能反应类型之间本来的层次关系
4、标签类很少有适用的时候