José foi incumbido de modelar as classes do sistema que a empresa estava desenvolvendo. Ele se deparou com as seguintes classes:
Classe 1, que possui os atributos data de nascimento, nome, sexo e um método para calcular a idade no calendário Gregoriano.
Classe 2, que possui os atributos data de nascimento, nome, sexo, telefone e um método para calcular a idade no calendário Chinês.
Classe 3, que possui os atributos data de nascimento, nome, sexo e um método para calcular a idade no calendário Juliano.
Por ser conhecedor de técnicas de orientação a objetos, ele propôs que fosse criada uma classe com os atributos comuns e o método de cálculo da idade. Sugeriu que fossem criadas classes baseadas nessa primeira e que apenas alterassem o que não fosse comum, como a inclusão do atributo telefone e diferentes tipos de implementação para o método do cálculo da idade. Deste modo ele utilizou, respectivamente, as técnicas de
Classe 1, que possui os atributos data de nascimento, nome, sexo e um método para calcular a idade no calendário Gregoriano.
Classe 2, que possui os atributos data de nascimento, nome, sexo, telefone e um método para calcular a idade no calendário Chinês.
Classe 3, que possui os atributos data de nascimento, nome, sexo e um método para calcular a idade no calendário Juliano.
Por ser conhecedor de técnicas de orientação a objetos, ele propôs que fosse criada uma classe com os atributos comuns e o método de cálculo da idade. Sugeriu que fossem criadas classes baseadas nessa primeira e que apenas alterassem o que não fosse comum, como a inclusão do atributo telefone e diferentes tipos de implementação para o método do cálculo da idade. Deste modo ele utilizou, respectivamente, as técnicas de