-
Generalização é o relacionamento entre uma classe e um ou mais versões refinadas (especializadas) desta classe. A classe sendo refinada é chamada de superclasse ou classe base, enquanto que a versão refinada da classe é chamada uma subclasse ou classe derivada. Atributos e operações comuns a um grupo de classes derivadas são colocadas como atributos e operações da classe base, sendo compartilhados por cada classe derivada. Diz-se que cada classe derivada herda as características de sua classe base. Algumas vezes, generalização é chamada de relacionamento is-a (é-um), porque cada instância de uma classe derivada é também uma instância da classe base.
Generalização e herança são transitivas, isto é, podem ser recursivamente aplicadas a um número arbitrário de níveis. Cada classe derivada não apenas herda todas as características de todos seus ancestrais como também pode acrescentar seus atributos e operações específicos.
-
A generalização é um relacionamento entre um elemento geral e um outro mais específico. O elemento mais específico possui todas as características do elemento geral e contém ainda mais particularidades. Um objeto mais específico pode ser usado como uma instância do elemento mais geral. A generalização, também chamada de herança, permite a criação de elementos especializados em outros.
-
Acredito que a questão tente induzir o candidato ao erro ja que em Java poderiamos dizer que "BETA Extends ALFA", porem é valido notar que no diagrama de classes da UML não existe o relacionamento "extensão" e sim o relacionamento GENERALIZAÇÃO que indica uma herança da classe pai para a classe filha. Bons estudos!
-
Acrescentando o comentário do colega Tiago Melquiades, vale lembra que em UML existe a extensão, porém, ela é usada no diagrama de caso de uso para indicar possibilidade de um caso de uso utilizar outro caso de uso.
Por fim, a dica é: Em UML herança = GENERALIZAÇÃO (e não extensão).
-
Um caso de uso pai pode ser especializado em um ou mais casos de uso filho que representam formas mais específicas do pai. Nem o pai, nem o filho são necessariamente abstratos, embora o pai seja abstrato na maioria dos casos. Um filho herda a estrutura, o comportamento e os relacionamentos do pai. Todos os filhos do mesmo pai são especializações do pai. Essa é a maneira que a generalização se aplica aos casos de uso.
A generalização é usada quando você encontra dois ou mais casos de uso que têm comportamento, estrutura e finalidade comuns. Quando isso ocorre, você pode descrever as partes compartilhadas em um caso de uso novo, geralmente abstrato, que é especializado pelos casos de uso filho.
-
Quando se fala a palavra herda é herança, e em UML herança é demonstrada com o relacionamento de Generalização(Especialização), não precisa nem ler esse texto todo.
Alguém me corrige se falei besteira, sabe lá né.