A herança integral de atributos da classe Retangulo apresenta dois problemas:
1 - É necessário que cada quadrado possua largura e comprimentos iguais.
2 - O método mostrar escreve a palavra “Retangulo” no início do texto. Seria desejável que fosse escrito “Quadrado”.
Ainda, os construtores não são herdados por uma subclasse. É necessário então ter um construtor específico para a classe Quadrado. Isso nos permitiria resolver o primeiro problema, pois poderíamos ter um construtor que recebe apenas uma medida. Para atribuir esse valor aos atributos comprimento e largura (que são privados) deveremos lançar mão do construtor da classe Retangulo utilizando a palavra-chave super que chama o construtor da classe superior, como segue:
public Quadrado(int lado) { super(lado, lado); }
|
|