Faça um programa que representa formas geométricas utilizando herança simples, seguindo o modelo proposto.
Se necessário, crie novos métodos para facilitar o código.
Crie um programa que instancie objetos das duas classes.
Passo 1
E aí, galera!
Essa é uma questão de herança. O diagrama mostra que temos a classe mãe e a classe filha .
A melhor forma de resolver exercícios de herança é desenvolver primeiro a classe mãe, e posteriormente a classe filha.
A classe possui três atributos privados, a string , e os inteiros e que representam a posição da forma. Já a classe possui todos os atributos e métodos herdados da classe mãe além de possuir mais dois atributos inteiros e e mais dois métodos e
Depois de crias das duas classes, vamos precisar instanciar um objeto de cada classe para testar o nosso código. Então vamos precisar de métodos extras para acessar os atributos privados e protegidos a partir da
Mas antes, vamos escrever o cabeçalho. Como temos um atributo do tipo string então será necessário o incluir a biblioteca
Passo 2
Beleza, então vamos construir a classe .
A classe possui três atributos protegidos, a string e os inteiros e . Então usaremos a palavra chave para encapsular esses atributos corretamente.
O esquema de classe proposto no enunciado da questão termina aqui. Porém, para acessar esses atributos protegidos através de um objeto a gente vai precisar criar métodos públicos.
O primeiro vai ser o que vamos usar para inicializar os três atributos protegidos. Então essa função recebe como parâmetro os valores dos três atributos, e em seguida inicializa os atributos:
E também vamos criar uma função que não recebe nenhum atributo, e apenas exibe um texto que fala o nome e posição da forma:
Show! Classe mãe pronta!
Passo 3
Beleza! Com a classe mãe concluída podemos desenvolver a classe filha.
Pra começar, vamos declarar a classe e informar que queremos herdar a classe . Fazemos isso assim:
No código:
E prontinho! Agora a classe filha possui todos os métodos e atributos da classe mãe.
Vamos desenvolver agora os detalhes exclusivos da classe filha. Primeiro, ela possui dois atributos privados: e
Belezinha. A classe também possui dois métodos públicos. O primeiro é um método que retorna inteiros que calcula o perímetro.
E um segundo método chamado que retorna inteiros e calcula a área do quadrilátero:
Show. Mas a gente não tem nenhuma forma de preencher os atributos privados. Então vamos criar o método que inicializa os atributos o e .
E agora sim, a classe está pronta.
Passo 4
Agora vamos testar as classes. Primeiro vamos instanciar um objeto de cada classe.
Para o objeto vamos utilizar o método para iniciar os atributos, e em seguida vamos imprimir o conteúdo com o método
Já no objeto nós temos acesso aos atributos e métodos da classe mãe e também aos atributos e métodos exclusivos da classe filha.
Então podemos começar inicializado o objeto . Primeiro usando o método herdado e em seguida utilizando o método
E depois, podemos utilizar o método herdado para exibir informações sobre o e depois podemos usar os métodos e :
E teremos o seguinte resultado
E prontinho! Questão concluída.