1、出现原因1、同一个类型,有两个变化的维度(两个维度的抽象:一个抽象部分的抽象,一个实现部分的抽象)2、如何应对这种“多维度的变化”?如何利用面向对象技术来使得同一类型可以轻松地沿着两个方向变化,而不引入额外的复杂度?2、具体的例子数据库操作 操作类型:增删改查(具体功能的实现部分) 操作对象:客户,订单,产品…(对应上面的增删改查是1对多的关系(通过聚合关系联系起来))手机软件 软件功能:通讯录,游戏 支持品牌:M(摩托骡拉),N(喏鸡呀)计算机软件 软件功能:游戏,开发工具,绘图软件… 运行平台:Windows,Unix….过度的使用继承: ——以手机软件为例:以手机品牌分类:以手机软. Read More