Exercícios Resolvidos de Construtores

Ver Teoria

Enunciado

Defina uma classe que representa um retângulo com métodos privados que calcula a área o perímetro do retângulo. Crie um construtor para esse retângulo que receba a altura e a largura, e que caso nenhum valor seja inserido inicialize a largura e altura com valor 1 .

Passo 1

E aí, tudo beleza?!

Essa questão pede pra gente criar uma classe para representar um retângulo. Um detalhe é que a questão pede um construtor com valores padronizados.

Vamos precisar declarar dois atributos a l t u r a e l a r g u r a , que por questões de boas práticas de programação, serão privados. E também vamos desenvolver dois métodos privados a r e a ( ) e p e r i m e t r o ( ) .

Porém, essa classe não tem nenhuma forma de exibir seus atributos e métodos. Então vamos criar um método i m p r i m i r ( ) que mostra os atributos e cálculos da classe.

Vamos começar desenvolvendo o cabeçalho da questão.

Passo 2

Vamos agora desenvolver a classe R e t a n g u l o

E em seguida vamos declarar seus atributos:

O passo seguinte é declarar os protótipos dos métodos! Primeiro vamos declarar os protótipos dos métodos privados a r e a ( ) e p e r i m e t r o ( ) . Esses dois métodos não precisam receber parâmetros, e retornam valores reais.

Depois a gente muda para o p u b l i c e declaramos o protótipo do construtor, que não tem tipo, e recebe dois parâmetros.

E por fim, declaramos o protótipo do método i m p r i m i r ( )

E podemos fechar a classe.

Passo 3

Agora vamos desenvolver cada um dos métodos da classe! Para desenvolver um método fora da classe a gente chama o método usando e dentro das chaves escreve o conteúdo do método.

t i p o   N o m e C l a s s e ∷ N o m e M e t o d o     p a r a m e t r o s   {   c o n t e u d o   }

Primeiro, vamos desenvolver o construtor. Como já definimos, o nosso construtor vai receber dois parâmetros. O detalhe é que esses parâmetros tem valores padrão. Caso não seja fornecido valores, o construtor irá usar o 1 como padrão.

Para criar um método com valor padrão é só a gente usar o operador = v a l o r do lado dos parâmetros do método.

Dentro do construtor vamos inicializar os atributos a l t u r a e l a r g u r a com os valores inseridos pelo usuário.

Passo 4

Seguindo em frente, vamos desenvolver os demais métodos da classe.

O método a r e a ( ) vai simplesmente retornar o valor da multiplicação a r e a × a l t u r a :

O método p e r i m e t r o ( ) também é tranquilo de desenvolver. Ele simplesmente vai retornar o valor da soma de todos os lados do retângulo, que podemos calcular assim:

2 × ( a l t u r a + l a r g u r a )

E pra gente acessar os valores dos atributos e os resultados dos métodos, vamos desenvolver o método i m p r i m i r ( ) . Utilizando o c o u t vamos exibir na tela o valor dos atributos e o resultado dos cálculos:

E prontinho! A classe e seus métodos estão concluídos!

Passo 5

Agora é só a gente testar tudo.

Vamos criar três instancias de R e t a n g u l o , cada uma delas vai inserir uma quantidade diferente de parâmetros no construtor, pois como o construtor possui valores padrão, os parâmetros não fornecidos serão preenchidos com o valor padrão 1 .

Depois, em cada objeto, vamos executar o método i m p r i m i r  

Rodando o código vamos ter o seguinte resultado:

E prontinho! Está tudo funcionando direitinho!

Resposta