Question: what is the difference between inheritance and generalization?
Answer: Generalization is the term that we use to denote abstraction of common properties into a base class in UML. When we implement Generalization in a programming language, it is called Inheritance. So, Generalization and Inheritance are same, the terminology just differs depending on the context where it is being used.