Analise as seguintes afirmativas sobre programação orientada a objetos:
A análise permite concluir que:
Assinale a alternativa correta. Herança e interfaces são conceitos da orientação a objetos que possibilitam a obtenção de polimorfismo. Em Java, uma interface pode:
new
.Considere as classes a seguir e analise as seguintes afirmativas:
package com.ybadoo.tutoriais.poo;
public class AppleRed extends Apple
{
public AppleRed()
{
super(Color.red);
}
}
package com.ybadoo.tutoriais.poo;
public class AppleGreen extends Apple
{
public AppleGreen()
{
super(Color.green);
}
}
AppleRed
é um Apple
e por isso poderia ser armazenada em uma variável do tipo Apple
, como por exemplo: Apple apple = new AppleRed();
AppleGreen
é um Apple
e por isso poderia armazenar uma instância do tipo Apple
, como por exemplo: AppleGreen apple = new Apple();
Apple
, uma instância de AppleGreen
pode ser armazenada em variáveis do tipo AppleRed
, como por exemplo: AppleRed apple = new AppleGreen();
A análise permite concluir que:
Um dos conceitos básicos de orientação a objetos é o fato de um objeto, ao tentar acessar as propriedades de outro objeto, deve sempre fazê-lo por uso de métodos do objeto ao qual se deseja atribuir ou requisitar uma informação, mantendo ambos os objetos isolados. A essa propriedade da orientação a objetos dá-se o nome de:
Cuboctahedron
para representar um cuboctaedro, ou seja, um poliedro semi-regular composto por oito faces triangulares e seis faces quadradas, considerado um dos treze Sólidos de Arquimedes. A classe possui um único atributo denominado edge
, do tipo double
, que representa a aresta do cuboctaedro e cujo valor deve ser maior ou igual a zero e menor ou igual a quarenta. A classe possui dois construtores: o primeiro configura a aresta do cuboctaedro com o valor padrão 1.0
, e o segundo recebe como parâmetro a aresta do cuboctaedro. A aresta do cuboctaedro pode ser obtida e alterada pelo usuário por meio dos métodos getEdge()
e setEdge()
, respectivamente. A classe também apresenta os métodos area()
e volume()
, que retornam a área e o volume do cuboctaedro, respectivamente. A área de um cuboctaedro de aresta a é obtida pela fórmula (6 + 2 * √3) * a2. O volume de um cuboctaedro de aresta a é obtido pela fórmula 5 / 3 * √2 * a3.Equipamento
com o atributo ligado
(tipo boolean
) e com os métodos liga
e desliga
. O método liga
torna o atributo ligado
verdadeiro e o método desliga
torna o atributo ligado
falso. Desenvolva uma classe chamada EquipamentoSonoro
que herda as características de Equipamento
e que possui os atributos volume
(tipo int
) que varia de 0 a 10 e stereo
(tipo boolean
). A classe ainda deve possuir métodos para ler e alterar o volume
, além dos métodos mono
e stereo
. O método mono
torna o atributo stereo
falso e o método stereo
torna o atributo stereo
verdadeiro. Ao ligar o EquipamentoSonoro
através do método liga
, seu volume
é automaticamente ajustado para 5. Caso o volume
seja configurado para um valor inválido, o sistema deverá lançar a exceção IllegalArgumentException
.Considere a classe em Java apresentada a seguir.
package com.ybadoo.tutoriais.poo;
public class Questao
{
public static void main(String[] args)
{
try
{
op(0);
}
catch(IllegalArgumentException exception)
{
System.out.print("X");
}
catch(Exception exception)
{
System.out.print("Y");
}
finally
{
System.out.print("Z");
}
}
private static void op(int v) throws IllegalArgumentException
{
if(v == 0)
{
throw new IllegalArgumentException("U");
}
}
}
Como resultado da execução desse programa, é impressa a cadeia de caracteres: