- Encapsulation : it isolates a particular code and data from all other codes and data. A well-defined interface controls the access to that particular code and data.
- Inheritance : It is the process by which one object acquires the properties of another object. This supports the hierarchical classification,by use of inheritance, an object need only define those qualities that make it unique within its class. It can inherit its general attributes from its parent.
- Polymorphism : It is a feature that allows one interface to be used for general class of actions. In general polymorphism means "one interface, multiple methods", This means that it is possible to design a generic interface to a group of related activities. This helps reduce complexity by allowing the same interface to be used to specify a general class of action.
An object with a Finalize method is more work for the garbage collector than an object without one. Also there are no guarantees about the order in which objects are Finalized, so there are issues surrounding access to other objects from the Finalize method. Finally, there is no guarantee that a Finalize method will get called on an object, so it should never be relied upon to do clean-up of an object's resources.
A jagged array is an array whose elements are arrays. The elements of a jagged array can be of different dimensions and sizes. A jagged array is sometimes called an "array-of-arrays."