ExerciciosHerancaRespostas
989 palavras
4 páginas
Gabarito comentado1) Considerando a hierarquia abaixo:
Arquivo t:int loc:String d:Data Arquivo (x:int) mA( ) mB( )
ArquivoBinario
ArquivoBinario (a:int ) mB( ) mC( )
ArquivoTexto x :int
ArquivoTexto (a:int, b:int ) mA( ) mB( ) mC( )
a) Quantos atributos têm os objetos da classe ArquivoBinario? e da classe ArquivoTexto?
Os objetos da classe ArquivoBinario tem 3 atributos (todos herdados)
Os objetos da classe ArquivoTexto tem 4 atributos (3 herdados e 1 exclusivo)
b) O método mA pode ser chamado para os objetos da classe
ArquivoBinario?
Sim, pois é um método herdado.
c) O método mB é o mesmo para as três classes?
Não. Há 3 métodos mB:
- o da superclasse
- o da classe ArquivoBinario (sobrescrita)
- o da classe ArquivoTexto (sobrescrita)
d) O método mC da classe ArquivoTexto é uma sobrescrita? é uma sobrecarga? Justifique sua resposta.
Não é sobrescrita pois não há um método com a mesma assinatura, na superclasse. Não é sobrecarga pois não há outro método mC com assinatura diferente na mesma classe, nem na super.
e) Considere a sequência de instruções abaixo e explique o que faz cada instrução ou se está errada:
(i).
Declara 4 variáveis objeto do tipo Arquivo. Estas variáveis podem referenciar objetos do tipo Arquivo e objetos das subclasses de Arquivo. Ao serem declaradas não apontam para nenhum objeto.
Arquivo a, aT, aB , aa;
Memória
a
aT
///
(ii).
aB
aa
__
=
__
=
__
Instancia um objeto do tipo ArquivoTexto. Atribui a referência deste objeto à variável aT.