How can we Achieve Late binding in C#.Can any give one example.
Answer Posted / saurabh
Its using Virtual functions.
When compiler encounters virtual keyword in an function
defination, instead of binding to the function directly,
the compiler writes a bit of dispatch code that at runtime
will look at calling objects realtype and calls the
function accordingly.
EX.
class baseClass
{
protected virtual void PrintMessage()
{
Console.WriteLine("Hi From Base Class");
}
}
class derivedClass : baseClass
{
protected override void PrintMessage()
{
Console.WriteLine("Hi From Derived Class");
}
}
public static void Main()
{
baseClass b = new baseClass();
baseClass bd = new derivedClass();
b.PrintMessage(); // prints "Hi From Base Class"
bd.PrintMessage(); // prints "Hi From Derived Class"
}
Here the runtime detects the correct type of object stored
in bd i.e. derivedClass and calls dericedClass
implementation of PrintMessage().
| Is This Answer Correct ? | 20 Yes | 4 No |
Post New Answer View All Answers
Explain how do I convert a string to an int in c#?
Why is ienumerable used?
What are floating point numbers?
Can derived classes have greater accessibility than their base types?
How can you read 3rd line from a text file?
What is the difference between c and c sharp?
When do we generally use destructors to release resources?
What are primitive types in c#?
What is parameters in c#?
What is ilist c#?
What is a ienumerator?
What is hashtable in c# with example?
List down the fundamental oop concepts?
What is c# entity framework?
what are windows services?