Click here to Skip to main content
15,881,757 members
Please Sign up or sign in to vote.
3.00/5 (2 votes)
See more:
I want to know the clear difference between "Generalization" and "Specialization" in UML?

I have gone through the internet but I am unable to get the exact difference.

Could you please explain with an example.
Posted
Updated 2-Jun-11 21:40pm
v2
Comments
Dalek Dave 3-Jun-11 3:40am    
Edited for Grammar, Syntax and Readability.

"Generalization is the process of extracting shared characteristics from two or more classes, and combining them into a generalized superclass. Shared characteristics can be attributes, associations, or methods."

"In contrast to generalization, specialization means creating new subclasses from an existing class."

Those two lines were excerpts from this article [^]- an excellent one. it explains all nuances well enough.
 
Share this answer
 
Generalization
---------------
If many similar existing objects are combined to form a superclass to do the job of its subclass', then it is known as Generalization

specialization
--------------
if some new subclasses are created from an existing superclass to do specific job of the superclass, then it is known as specialization.
 
Share this answer
 
I would advice to read this CodeProject article, it explains those concepts pretty clearly:
OOP and UML[^].

—SA
 
Share this answer
 
http://design-antony.blogspot.in/2007/07/generalization-vs-specialization.html[^]

Just refer the above link and you will get your answer.
 
Share this answer
 
v2
Comments
André Kraak 18-Feb-12 10:12am    
Edited solution:
Replaced txt speak
Activated link
"Treat my content as plain text..." option disabled.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900