C# : new and virtual keywords

Example demonstrate how we can access derived class method without overridng the base class method.

public class Base
public virtual void Run()
Console.WriteLine("Base running");

public class Derieved : Base
public new void Run()
Console.WriteLine("Derieved running");

public class Program
public static void Main()
Base b = new Derieved();
var b1 = b as Derieved;
// Always make sure to check if casting worked or not
if (b1 != null)
b1.Run(); // Derieved running

b.Run(); // Base running


About Gokul Dahal, Nepal

Software Engineer, Freelancer, Design and Develop web applications,Software Developer Nepal, FreeLancer Nepal Contact : gokuldahal@gmail.com
This entry was posted in C# and tagged , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s