Logo Passei Direto
Buscar
15 - Considere, em Java, uma classe C1 que herde de uma classe C2. Os objetos a e b (da classe C1) e c e d (da classe C2) são instanciados. Nesse caso é correto afirmar que:
(A) a classe C1 só pode herdar de C2 se C2 possuir pelo menos um de seus atributos classificado como public ou protected;
(B) o objeto a tem acesso direto a todos os atributos e métodos definidos em C1 e em C2;
(C) a atribuição do objeto a ao objeto c (c = a;) é válida;
(D) os métodos public definidos e implementados em C2 são acessíveis por qualquer objeto da classe C1; por este motivo, não é possível sobrescrevê-los em C1;
(E) a e b possuem o mesmo conjunto de atributos, armazenando os mesmos valores.
User badge image
Portuguesando

há 8 meses

Respostas

User badge image

Ed Verified user icon

há 8 meses

Vamos analisar cada uma das alternativas para determinar qual é a correta: (A) a classe C1 só pode herdar de C2 se C2 possuir pelo menos um de seus atributos classificado como public ou protected; Incorreta. Uma classe pode herdar de outra independentemente dos modificadores de acesso dos atributos. O que importa é que a classe C1 pode acessar os membros de C2 que são public ou protected. (B) o objeto a tem acesso direto a todos os atributos e métodos definidos em C1 e em C2; Correta. O objeto a, sendo uma instância da classe C1, tem acesso a todos os atributos e métodos definidos em C1 e também aqueles que são herdados de C2, desde que sejam public ou protected. (C) a atribuição do objeto a ao objeto c (c = a;) é válida; Incorreta. Isso não é válido, pois c é um objeto da classe C2 e a é um objeto da classe C1. Não se pode atribuir um objeto de uma subclasse a uma variável de uma superclasse sem um cast apropriado. (D) os métodos public definidos e implementados em C2 são acessíveis por qualquer objeto da classe C1; por este motivo, não é possível sobrescrevê-los em C1; Incorreta. Os métodos public de C2 são acessíveis em C1, mas eles podem ser sobrescritos em C1, desde que sejam definidos como override. (E) a e b possuem o mesmo conjunto de atributos, armazenando os mesmos valores. Incorreta. Embora a e b sejam instâncias da mesma classe C1, isso não garante que eles armazenem os mesmos valores, pois cada instância pode ter seus próprios valores para os atributos. Portanto, a alternativa correta é: (B) o objeto a tem acesso direto a todos os atributos e métodos definidos em C1 e em C2.

Essa resposta te ajudou?

0
Dislike0
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar essa resposta. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Essa pergunta também está no material:

Mais perguntas desse material

Mais conteúdos dessa disciplina