Polymorphism - appropriate method is called depending on the object type
Inheritance
- represents “Is A” relationship between classes. Class A “is a” class B
- the ability to inherit properties and methods and extend the functionality of an existing class in a new one1
Composition
- represents “Has a” relationship between classes. Class A “has a” class B
Encapsulation - used to hide information
Immutable - the data value cannot be changed
Arrays in .Net - cannot store more than 1 data type
Override - change behavior method for the derived class
Overload - having 2 or more methods with the same name in a class
Boxing - value to reference conversion -> heap
Unboxing - reference to value conversion -> stack