5. Manuel é um desenvolvedor Java e está criando um sistema para uma imobiliária. Ele precisa implementar uma classe chamada Terreno, que deve armazenar o comprimento e a largura do terreno em metros, além do valor do metro quadrado. Todos esses atributos são tipo double.
A classe está inicialmente implementada conforme a seguir:
public class Terreno { double comprimento; double largura; double precoMetroQuadrado; }
A classe Terreno deve implementar um método chamado calcularValor, que deve retornar o valor do terreno, com base em sua área e no valor do metro quadrado. Para fins de cálculo, considere que os terrenos são retangulares.
A seguir, assinale a alternativa que contém uma implementação correta do método calcularValor segundo o paradigma orientado a objetos.
está incorreta, pois declara outras variáveis (comprimento, largura e precoMetroQuadrado) e tenta usar seus valores no cálculo do valor. Ou seja, ela não utiliza os valores dos atributos da classe para fazer os cálculos. Além disso, como seus valores não foram inicializados antes do cálculo, isso geraria um erro de compilação em Java.
A alternativa
public double calcularValor(double comprimento, double largura,
está incorreta, pois também não utiliza os valores dos atributos da classe para fazer os cálculos, que são realizados com os valores dos parâmetros passados para o método, o que não foi solicitado.
A alternativa
public void calcularValor() {
double valor = comprimento * largura * precoMetroQuadrado;
}
está incorreta, pois, apesar de realizar corretamente os cálculos com os valores dos atributos da classe, o resultado não é retornado pelo método, mas sim armazenado em uma variável local chamada valor, cujo conteúdo será perdido assim que o método finalizar.
A alternativa
public double calcularValor() {
double valor = comprimento * largura * precoMetroQuadrado;
System.out.println(valor);
}
está incorreta, pois, apesar de realizar corretamente os cálculos com os valores dos atributos da classe, o resultado não é retornado pelo método, mas sim impresso em console, o que não foi solicitado.
Lista de comentários
Resposta: D .
public double calcularValor() {
return comprimento * largura * precoMetroQuadrado;
}
Explicação:
A alternativa
public double calcularValor() {
return comprimento * largura * precoMetroQuadrado;
}
está correta, pois o valor do terreno é calculado de forma correta a partir dos valores dos atributos e retornado.
A alternativa
public double calcularValor() {
double comprimento;
double largura;
double precoMetroQuadrado;
return comprimento * largura * precoMetroQuadrado;
}
está incorreta, pois declara outras variáveis (comprimento, largura e precoMetroQuadrado) e tenta usar seus valores no cálculo do valor. Ou seja, ela não utiliza os valores dos atributos da classe para fazer os cálculos. Além disso, como seus valores não foram inicializados antes do cálculo, isso geraria um erro de compilação em Java.
A alternativa
public double calcularValor(double comprimento, double largura,
double precoMetroQuadrado) {
return comprimento * largura * precoMetroQuadrado;
}
está incorreta, pois também não utiliza os valores dos atributos da classe para fazer os cálculos, que são realizados com os valores dos parâmetros passados para o método, o que não foi solicitado.
A alternativa
public void calcularValor() {
double valor = comprimento * largura * precoMetroQuadrado;
}
está incorreta, pois, apesar de realizar corretamente os cálculos com os valores dos atributos da classe, o resultado não é retornado pelo método, mas sim armazenado em uma variável local chamada valor, cujo conteúdo será perdido assim que o método finalizar.
A alternativa
public double calcularValor() {
double valor = comprimento * largura * precoMetroQuadrado;
System.out.println(valor);
}
está incorreta, pois, apesar de realizar corretamente os cálculos com os valores dos atributos da classe, o resultado não é retornado pelo método, mas sim impresso em console, o que não foi solicitado.