Faça um programa em Java, orientado a objetos, com as seguintes características:

2 respostas
Astesio

Pessoal essa trés não estou entendo direito alguem pode me ajudar?

Mas por favor se poder comentar o código para que eu possa estudar e aprender. Obrigado.

Faça um programa em Java, orientado a objetos, com as seguintes características:

Desenvolva uma classe que represente um automóvel e possua os atributos código, nome, valorInicial, ano e tipo.
 O tipo deverá ter o valor 1, quando se tratar de um automóvel popular; e o valor 2, quando se tratar de automóvel de padrão luxo.
 Regra de negócio: a cada ano, o carro de padrão popular tem uma depreciação de 8%, enquanto um carro de padrão luxo tem uma depreciação de 5%. Esta regra é aplicada para calcular o valor de mercado do veículo.
 A classe Automovel deverá possuir ainda:
o Um método getValor(), que recebe o ano atual como parâmetro e retorna o valor de mercado do automóvel.
o Um método getInformacoes(), que exibe todas as informações do veículo, como no exemplo a seguir:
Código: 0001
Nome: Fiat Palio
Cor: Prata
Ano: 2008
Padrão: Popular
Valor Inicial: R$30.000,00
Valor de mercado em 2013: R$19.772,45
 Crie uma classe denominada Principal, com o método main, e teste a estrutura criada acima.

//Onde eu conseguir chegar mas não sei se ta certo

public class Automovel {
	// Atributos
	int    codigo;
	String nome;
	double valorInicial;
	int ano;
	int anoFabricado; // Variavel nova
	int tipo;
	double valor = 0;
	
	// métodos
	void  setNegocio(){
				
		if(tipo == 1)
		{
			System.out.println("Padrão: Popular"); 
		}
		else
		{
			System.out.println("Padrão: Luxo");
		}
		
	} // fim do método
	
	double getValor(int ano){
		
	} // Merodo que retorna o valor do carro
	
	public void getInformacoes() 
	{
		System.out.println("Código: "+ codigo);
		System.out.println("Nome: "+ nome);
		System.out.println("Ano: "+ ano);
		System.out.println("Valor Inicial: "+ valorInicial);
		System.out.println("Valor de mercado em 2013: ");
			
	} // fim do método getInformacoes
	
} // fim do método Automovel
public class AutomovelTestDrive {

	public static void main(String[] args) {
		

	}

}

2 Respostas

wagnerfrancisco

Você está no caminho certo. Entretanto não entendi ao certo o motivo do método setNegocio. Ele não está na especificação, aparentemente. Para implementar a regra, você precisa do cálculo de depreciação. A princípio, você pode continuar sua implementação e fazer este cálculo no método getValor.

Outros detalhes:
Você usou o modificador de acesso public no método getInformacoes. Algum motivo para não utilizar estes modificadores nos demais atributos/métodos?
Você pode criar um construtor para inicializar seu objeto com alguns valores.
Não sei se você já aprendeu, mas você pode declarar os valores do tipo (1 e 2) como constantes:

public static final AUTOMOVEL_POPULAR = 1;
public static final AUTOMOVEL_DE_LUXO = 2;

O ideal seria usar um enum neste caso. Mas você possivelmente ainda não aprendeu, melhor deixar para depois.

Astesio

Na verdade o modificadores public eu usei pois tentei fazer igual do Livro do Deitel mas sem sucesso.

Ainda não aprendemos construtores, mas eu sei uma base sobre eles pois já li algo no livro sobre tal assunto else servem para inicializar ja com algum valor. O problema e que não estou sabendo aplicar tais funcionalidaes no meu programa. Não sei em que mas eu programava em C programação estruturada. Estou me confundido todo com orientação a objetos.
kkkk.

Criado 28 de agosto de 2012
Ultima resposta 29 de ago. de 2012
Respostas 2
Participantes 2