Posts

Showing posts from September, 2018

Multiple Inheritance in C#

In this article we are going to see, Inheritance in C#. So, What is an Inheritance in C#? An Inheritance is a concept or approach where one type can be derived from other types Just like a son gets his DNA from his parents. In c#, we can derive a type from other types. So the child type can inherit its parent type members such as Methods, Property, etc. Now, we will see Multiple Inheritance where a class can derive from more than one type. But for that, a class has to derive from Interfaces. Because Interfaces supports multiple Inheritance, a normal class derived from only one Class and multiple interfaces. (Type means Classes, Interfaces, and Abstract classes)Following is a simple program to understand it. Code Snippet:- public interface Interface1 { /// <summary> /// Abstract method declaration /// </summary> /// <param name="_input"></param> void WhatUgot(int _input); } public interface Interface2 { /// <summary> /// Abstract...

Single Inheritance in C#

In this article we are going to see, Inheritance in C#.So, What is an Inheritance in C# ? An Inheritance is a concept or approach where one type can derived from other type. Just like a son gets his DNA from his parents. In c#, we can derive a type from other type. So the child type can inherit its parent type members. ( Members mean Methods,Property etc.)Now , we will see Single Inheritance where a class and inherit only one class. A class can not be derived from more than one class that’s why we called it as Single Inheritance. (Type means Classes,Interfaces and Abstract classes).Following is a simple program to understand it. Code Snippet:- /// <summary> /// Abstract class /// </summary> public abstract class AbsClass { /// <summary> /// Abstract method declaration /// </summary> /// <param name="_input"></param> public abstract void WhatUgot(int _input); } /// <summary> /// Non Abstract Clas...

RunTime Polymorphism in C#

In this article we are going to see, polymorphism in C#.So, What is a polymorphism in C# ? As the polymorphism word itself describes its defination which means multiple forms.Poly means "Multiple” or “Many” and Morphisum means “changing” or “converting”.So in C# , polymorphism works in two scenario which are Run time and Compile time. Now we will see Run time polymorphism which is Method Overriding. Method Overriding is a concept or an approach where we can create Methods with same name and same signature. (Signature means number of passed argument/parameters considering with their data type and sequence)Following is a simple program to understand it. Code Snippet:- /// <summary> /// Parent Class /// </summary> public class ClassA { /// <summary> /// Virtual Method /// </summary> /// <param name="_input"></param> public virtual void WhatUgot(int _input) { Console.WriteLine("This is Original Virtual Method"); ...

Compile Time Polymorphisum in C#

In this article we are going to see, polymorphism in C#.So, What is a polymorphism in C# ?As the polymorphism word itself describes its defination which means multiple forms.Poly means Multiple” or “Many” and Morphism means “changing” or “converting”.So in C# , polymorphism works in two scenario which are Run time and Compile time.First we will see Compile time polymorphism which is Method Overloading. Method overloading is an concept or approach where we can create Methods with same name but different signature. (Signature means number of passed argument/parameters considering with their data type and sequence) Following is a simple program to understand it. Code Snippet:- /// <summary> /// class with Overloaded method with different signature but with same method name. /// </summary> public class CompileTimePolyMorph { /// <summary> /// Method with integer as input parameter /// </summary> /// <param nam...

Abstraction in C#

In this article we are going to see, Abstraction in C#.So, What is an Abstraction in C#? Abstraction is one of the key concepts of Object-Oriented Programming which is used to hide the complexity of data from users or consumers. There are several ways to achieve it, like using private access modifier, Interfaces and Abstract classes. For example, in the case of WCF services we provide Interfaces to consumers not an actual class. Because the actual class might have various methods and data which is useless and confusing for the consumer. Following is a simple program to understand it. Code Snippet:- public abstract class Animal { // Open to Consumer or user public abstract void Eat(string _food); public void Sounds(string _voice) { Console.WriteLine("And sounds like " + _voice); } } public class Lion: Animal { public override void Eat(string _food) { Console.WriteLine("Lion likes to eat " + _food); } } public class AbstarctionDemo { static ...