A Figura a seguir exibe um modelo conceitual de dados por me...
Admita que as instâncias dessas classes sejam representadas por conjuntos não vazios e cujos nomes sejam iguais aos nomes das classes que representam.
Nessas condições, qual equação é sempre verdadeira?
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
AJUDA PARA ENTENDER ESSA AQUI.
Esse vídeo a partir do minuto 18 me ajudou a entender essa questão: https://www.youtube.com/watch?v=jiItYUjmO0Q
Gabarito: A
O {complete, overlapping} no lado da classe C indica que essa classe é completamente especializada, ou seja, herda os componentes e ainda especifica novas funções e atributos.
Seguindo essa lógica, acredito que seja suficiente para descartar todas as outras alternativas.
Os modificadores de herança são:
Complete - TUDO que está no pai será herdado por cada filho
Incomplete - pode haver algo que está no pai e não está no filho
Overlapping - Dois filhos podem herdar a mesma coisa do pai
Disjoint - Qualquer atributo do pai só será herdado por um dos filhos
Ou seja: se A é {complete, overlapping} significa que tudo que está em A está em B e C.
O mesmo ocorre entre B e B1, B2. E se B1 e B2 representam B, A pode ser representado por B1 + B2 + C.
Erros das alternativas:
B - Tanto B quanto C herdaram tudo de A (ex: [a1,a2,a3]. Então se eu removo C (ex:[a1,a2,a3,c1,c2]) de A, eu removo, obrigatoriamente, parte de B (ex:[a1,a2,a3,b1,b2]).
C - Esse U invertido significa intersecção, aquilo que existe em ambos os conjuntos. Tanto B quanto C são filhos completos de A, o que significa que 100% das vezes vai haver algum elemento compartilhado entre B e C (no nosso exemplo seriam [a1,a2,a3])
D - Oposto aos conjuntos A e B, a herança de C com seus filhos é do tipo incompleta e disjunta, o que significa que PODE existir algum elemento de C que não está em C1 e C2. Também significa que a intersecção de C1 e C2 é nula. Logo, C não pode ser representado pela união de seus filhos.
E - Como foi dito na alternativa anterior, a herança do tipo incomplete, disjoint demonstra uma falta de compromisso de C1 e C2 em herdar os atributos de C, logo, não podemos assumir que C1 é representado pela diferença entre C e C2. Por exemplo, C1 e C2 podem não herdar ABSOLUTAMENTE NADA de C, ou apenas um dos dois podem não herdar nada. Nesse caso, C1 poderia ser, por exemplo [Cx, Cb, Cc] e C2 herdar todos os atributos de C [a1,a2,a3,c1,c2], essa subtração faria o conjunto [] que é diferente de [Cx,Cb,Cc]
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo