Skip to main content

Generalization and Specialization


  • Generalization creates a concept with a broader scope.
  • Specialization creates a concept with a narrower scope.

  • Reusing the interface! 
  • Inheritance: get the interface from the general class.
  • Objects related by inheritance are all of the same type.


Comments

Popular posts from this blog

Aggregation and Decomposition

Idea: make new objects by combining existing objects. Reusing the implementation!  An aggregation consists of a number of (sub-)concepts which collectively is considered a new concept. A decomposition splits a single concept into a number of (sub-)concepts.

The Class Concept

A class is a collection of objects (or values) and a corresponding set of methods.  A class encapsulates the data representation and makes data access possible at a higher level of abstraction. Example 1: A set of vehicles with operations for starting, stopping, driving, get km/liter, etc. Example 2: A time interval, start time, end time, duration, overlapping intervals, etc. Example 3: A string, upper case, compare, lower case, etc.  str.equals(otherStr) – class/Java style   strcmp(str, otherStr) – C style