Introduction:
Object Oriented Programming is relatively a high Performance approach in this modern Programming world.But,Understanding oops techniques is somewhat not a complex task,In this article i described about OOPS techniques in C#.
Main:
The Common OOPS techniques are,
Interfaces
Inheritance
Polymorphism
Relationships between objects
Events
Reference versus value types
Interfaces:
An interface is a collection of public methods and properties that are grouped together to encapsulate specific functionality. After an interface has been defined, you can implement it in a class. This means that the class will then support all of the properties and members specified by the interface.
Interfaces cannot contain any code that implements its members; it just defines the members themselves. The implementation must come from classes that implement the interface.
A class can support multiple interfaces, and multiple classes can support the same interface. The concept of an interface, therefore, makes life easier for users and other developers.
And also Once an interface is published — that is, it has been made available to other developers or end users.
Inheritance:
Inheritance is one of the most important features of OOP. Any class may inherit from another, which means that it will have all the members that the class it inherits from has. In OOP terminology, the class being inherited from (derived from) is the parent class (also known as the base class).
Polymorphism:
Polymorphism (literally, “having multiple shapes”) describes a set of objects of different classes with similar behavior.
Polymorphism is an extremely useful technique for performing tasks with a minimum of code on different objects descending from a single class.
No Cast Needed for polymorphism.
Relationships between objects:
Inheritance is a simple relationship between objects that results in a base class being completely exposed by a derived class.
Relationship between objects is commonly classified into the following two types,
Containment: One class contains another. This is similar to inheritance but allows the containing class to control access to the members of the contained class and even perform additional processing before using members of a contained class.
Collections: One class acts as a container for multiple instances of another class. This is similar to having arrays of objects, but collections have additional functionality, including indexing, sorting, resizing, and more.
Events:
Objects may raise (and consume) events as part of their processing. Events are important occurrences that you can act on in other parts of code, similar to (but more powerful than) exceptions.
Reference versus value types:
Value types store themselves and their content in one place in memory.
Reference types hold a reference to somewhere else in memory (called the heap) where content is stored.
One key difference between value types and reference types is that value types always contain a value, whereas reference types can be null, reflecting the fact that they contain no value.
Conclusion:
Hope,this helps,
Happy Coding.
hey there I just wanted to comment your blog and say that I really enjoyed reading your blog post here. It was very informative and I also digg the way you write! Keep it up and I’ll be back to read more soon mate