Buscar

Atividade2_Veiculos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Programação Orientada a Objetos - 2012
Prof. Vinícius Sebba Patto.
Considere o diagrama de classes na última página. Desenvolva as respectivas classes e interface em Java, 
de acordo com as instruções abaixo:
1 – É desejável as seguintes características e comportamentos à classe VeiculoMotorizado:
1.1 – Tenha um construtor recebendo parâmetros para os atributos nome e combustivel; velocidade deve 
ser iniciado como 0 e ligado, como false.
1.2 – O método acelera deve incrementar a propriedade velocidade.
1.3 – O método frea deve decrementar a propriedade velocidade.
1.4 – O método liga deve atribuir “true” à propriedade ligado.
1.5 – O método desliga deve atribuir “false” à propriedade ligado.
1.6 – O método getNome deve retornar a propriedade nome.
1.7 – O método getVelocidade deve retornar a propriedade velocidade.
1.8 – O método isLigado deve retornar a propriedade ligado.
1.9 – O método getCombustivel deve retornar a propriedade combustivel.
1.10 – O método getEstado deve ser abstrato, ter retorno string e ser implementado em subclasses.
2 – É desejável os seguintes comportamentos à classe VeiculoTerrestre:
2.1 – Tenha um construtor recebendo parâmetros para os atributos nome e combustivel; o construtor deve 
chamar o construtor da superclasse passando os seus respectivos parâmetros.
2.2 – Tenha um construtor recebendo parâmetros para os atributos nome, combustivel, numeroRodas e 
numeroMarchas; o construtor deve chamar o construtor da superclasse passando os seus respectivos 
parâmetros (nome e combustírvel). A propriedade sentido deve ser iniciada com “Seguindo reto”. As 
demais propriedades, de acordo com os parâmetros.
2.3 – O método sinalizarConvDireita deve atribuir à propriedade sentido o valor “Convergindo à 
direita”.
2.4 – O método sinalizarConvEsquerda deve atribuir à propriedade sentido o valor “Convergindo à 
esquerda”.
2.5 – O método desligarSeta deve atribuir à propriedade sentido o valor “Seguindo reto”.
2.6 – O método toString deve retornar uma String do seguinte tipo: 
“DESCRIÇÃO: Nome do carro: nome; Combustível: combustivel; Número de rodas: numeroRodas; 
Número de marchas: numeroMarchas" (no final da mensagem, concatene “\n” para quebrar linha).
2.7 – O método getEstado deve retornar uma String do seguinte tipo: 
“ESTADO: Estado do motor: ligado; Velocidade: velocidade; Sentido do veículo: sentido" (no final da 
mensagem, concatene “\n” para quebrar linha).
3 – É desejável as seguintes características e comportamentos à classe VeiculoAereo:
3.1 – Tenha um construtor recebendo parâmetros para os atributos nome e combustivel; o construtor deve 
chamar o construtor da superclasse passando os seus respectivos parâmetros.
3.2 – Tenha um construtor recebendo parâmetros para os atributos nome, combustivel, tetoServico e 
pistaServico; o construtor deve chamar o construtor da superclasse passando os seus respectivos 
parâmetros (nome e combustírvel). A propriedade altitude, sentidoHorizontal e sentidoVertical devem 
ser iniciadas com os respectivos valores: 0, "Segindo reto" e "Mantendo o nível". As demais 
propriedades, de acordo com os parâmetros.
3.3 – O método subir deve atribuir à propriedade sentidoVertical o valor “Subindo” e incrementar a 
altitude.
3.4 – O método descer deve atribuir à propriedade sentidoVertical o valor “Descendo” e decrementar a 
altitude.
3.5 – O método manterNivel deve atribuir à propriedade sentidoVertical o valor “Mantendo o nível”.
3.6 – O método virarDireita deve atribuir à propriedade sentidoHorizontal o valor “virando à direita”.
3.7 – O método virarEsquerda deve atribuir à propriedade sentidoHorizontal o valor “virando à 
esquerda”.
3.8 – O método manterSentido deve atribuir à propriedade sentidoHorizontal o valor “seguindo reto”.
3.9 – O método getTetoServico deve retornar a propriedade tetoServico.
3.10 – O método getAltitude deve retornar a propriedade altitude.
3.11 – O método toString deve retornar uma String do seguinte tipo: 
“DESCRIÇÃO: Nome do avião: nome; Combustível: combustivel; Teto de serviço: tetoServico; Pista de 
serviço: pistaServico" (no final da mensagem, concatene “\n” para quebrar linha).
3.12 – O método getEstado deve retornar uma String do seguinte tipo: 
“ESTADO: Estado do motor: ligado; Velocidade: velocidade; Sentido do avião: sentidoVertical e 
sentidoHorizontal; Altitude do avião: altitude" (no final da mensagem, concatene “\n” para quebrar 
linha).
Implementadas as classes e interface, crie duas classes: Carro e Aviao. Com as seguintes características:
i. Para a classe Carro:
i.i. Tenha a propriedade carro, do tipo VeiculoTerrestre;
i.ii. Tenha um construtor que receba os seguintes parâmetros: nome, combustível, numeroRodas e 
numeroMarchas. Instancie o objeto carro, do tipo VeiculoTerrestre, com os respectivos parâmetros.
i.iii. Crie o método público voltinha, que não retorne valor, e faça o seguinte: imprima (println) a 
descrição do carro; ligue o carro; acelere o carro até 220 Km/h; imprima o estado do carro; sinalize 
conversão à direita; reduza a velocidade até 120 Km/h; imprima o estado do carro; desligue a seta; 
acelere para 185 Km/h; imprima o estado do carro; ligue a seta para a esquerda; reduza a velocidade para 
140 Km/h; imprima o estado do carro; desligue a seta; imprima o estado do carro; pare o carro; desligue o 
motor; e imprima o estado do carro.
A. Para a classe Aviao:
A.A: Tenha a propriedade aviao, do tipo VeiculoAereo;
A.B: Tenha um construtor que receba os seguintes parâmetros: nome, combustível, tetoServico e 
pistaServico. Instancie o objeto aviao, do tipo VeiculoAereo, com os respectivos parâmetros.
A.C: Crie o método público voltinha, que não retorne valor, e faça o seguinte: imprima (println) a 
descrição do aviao; ligue o aviao; acelere o aviao até 350 Km/h; imprima o estado do aviao; suba até 1000 
metros e acelere o avião até 1350 Km/h; faça o avião virar a direita; imprima o estado do avião; 
mantenha o sentido do vôo; acelere para 2550 Km/h e suba até 2200 metros; imprima o estado do avião; 
faça o avião subir até o teto de serviço; mantenha o nível; imprima o estado do avião; abaixe a aeronave 
até 1000 metros de altitude; imprima o estado do avião; reduza a velocidade até 400 km/h; imprima o 
estado do avião; abaixe a aeronave até a altitude de 0 metro; pare o avião; desligue o motor; e imprima o 
estado do avião.
Terminadas as classes acima, é hora de vê-las em ação. Crie uma classe com o nome Inicial, que possua o 
método publico, estático e sem retorno main(String[] args). Nele, instancie os seguintes objetos:
- Carro opala = new Carro("Opala", "gasolina", 4, 5);
- Aviao f16 = new Aviao("F16", "querosene", 15250, 500);
- Em seguida, chame o seu Opala para dar uma voltinha, depois, o seu F16! :D

Continue navegando