Magna Concursos

O 1º Tenente (T) Posseidon iniciou um projeto de programação JAVA de uma nova classe chamada "Navio" com o objetivo de representar em código os meios operativos da Marinha do Brasil. Para isso, foi necessário que ele aplicasse devidamente os conceitos básicos de orientação a objetos. Os requisitos por ele encontrados são listados abaixo:

1. A classe "Navio" possuirá atributos fundamentais como o seu calado (altura do casco) ou a sua tonelagem (volume) - ambos de classe Double - além de métodos ligados a tais atributos que serão comuns a todos os navios. O tenente receberá novos programadores em sua divisão e precisa evitar que os programadores alterem ou acessem os atributos sensíveis do navio relativos às suas peças, motores e mecanismos internos por meio de códigos externos à classe, sob risco de comprometer as atividades de programação no futuro e gerar dificuldades de compatibilidade.

2. "Navio" é um tipo de "MeioAquatico", assim como a classe "Submarino" (que ·será programada posteriormente). A classe "Meios Aquáticos" não pode ser instanciada, mas possui métodos próprios e que são comuns tanto a submarinos quanto a navios, como, por exemplo, o método que lista o conjunto de tripulantes do meio. A definição de "MeioAquatico' deve utilizar o correto conceito de boa programação em JAVA para este contexto.

3. A· classe "Navio" e a classe "Submarino" possuem, ambas, métodos de locomoção. Tais métodos são diferentes para cada um dos meios: navios apenas se movem na superfície do mar enquanto submarinos possuem um sistema tridimensional de locomoção, podendo alcançar uma profundidade máxima que depende de cada tipo de submarino.

4. "Corveta' e "Fragata" são classes que possuem atributos em comum com "Navio', além de atributos específicos a cada uma, como sistemas de armas ou radares de guerra. Assim, são versões especializadas de "Navio".

Assinale a opção com os conceitos mais específicos e apropriados de Programação Orientada a Objetos em JAVA, respectivamente, para cada um dos pontos apresentados.

 

Provas

Questão presente nas seguintes provas