Subir Campo.
Duas classes têm o mesmo campo.
Remova o campo das subclasses e mova-o para a superclasse.
##Example
##Why Refactor
As subclasses cresceram e evoluíram separadamente, fazendo surgir campos e métodos idênticos (ou quase idênticos).
##Benefits
-
Elimina a duplicação de campos nas subclasses.
-
Facilita a posterior realocação de métodos duplicados, se existirem, das subclasses para uma superclasse.
##How to Refactor
-
Certifique-se de que os campos são usados para as mesmas necessidades nas subclasses.
-
Se os campos tiverem nomes diferentes, dê a eles o mesmo nome e substitua todas as referências aos campos no código existente.
-
Crie um campo com o mesmo nome na superclasse. Observe que, se os campos eram private, o campo da superclasse deve ser protected.
-
Remova os campos das subclasses.
-
Você pode considerar usar Autoencapsular Campo para o novo campo, a fim de ocultá-lo por trás de métodos de acesso.