您有两个具有公共字段和方法的类。

为它们创建一个共享的超类,并将所有相同的字段和方法移动到它。

当两个类以相同的方式执行类似的任务,或者以不同的方式执行类似的任务时,就会发生一种类型的代码复制。对象提供了通过继承简化这种情况的内置机制。但是,这种相似性通常在创建类之前都不会被注意到,这就需要稍后创建继承结构。

代码重复数据删除。常见的字段和方法现在只“存在”在一个地方。

不能将此技术应用于已经有超类的类。

创建一个抽象超类。

使用上拉场,上拉法上拉构造器本体将公共功能移动到超类。从字段开始,因为除了公共字段之外,还需要移动公共方法中使用的字段。

在客户端代码中寻找可以用新类替换子类的地方(比如在类型声明中)。