泛化是两个同类的可泛化元素(如类、包或其他元素)之间的关系,通常可以用继承或委托的方式实现.
拿UML中的类之间关系举例,类之间关系有关联、聚合、组合、依赖和泛化,在这里,泛化表示了一个较一般较广泛的类和较特殊类之间的关系,也可以看作一个子集关系。
很多书把继承和泛化混为一谈,泛化是个更加广泛的概念,继承只是一种实现方式,使用委托采用对象组合的方式一样可以实现泛化,这也是OO编程原则之一,原因在于继承破坏了封装性、使得子类和父类之间的关系紧耦合了,而委托则很好体现了协作的思想,委托的双方之间的关系也是松耦合的
泛化是两个同类的可泛化元素之间的直接关系。其中一个元素被称为父,另一个为子。对类而言,父称为超类(superclass),子称为子类。父所说明的直接实例带有所有子的共同特点,子所说明的实例是上述实例的子集,不仅有父的特征,还有独有的特征。
绘制泛化关系如下图:
拿UML中的类之间关系举例,类之间关系有关联、聚合、组合、依赖和泛化,在这里,泛化表示了一个较一般较广泛的类和较特殊类之间的关系,也可以看作一个子集关系。
很多书把继承和泛化混为一谈,泛化是个更加广泛的概念,继承只是一种实现方式,使用委托采用对象组合的方式一样可以实现泛化,这也是OO编程原则之一,原因在于继承破坏了封装性、使得子类和父类之间的关系紧耦合了,而委托则很好体现了协作的思想,委托的双方之间的关系也是松耦合的
泛化是两个同类的可泛化元素之间的直接关系。其中一个元素被称为父,另一个为子。对类而言,父称为超类(superclass),子称为子类。父所说明的直接实例带有所有子的共同特点,子所说明的实例是上述实例的子集,不仅有父的特征,还有独有的特征。
绘制泛化关系如下图: