Search Forum
(57415 Postings)
Search Site/Articles

Archived Articles
712 Articles

C# Books
C# Consultants
What Is C#?
Download Compiler
Code Archive
Archived Articles
Advertise
Contribute
C# Jobs
Beginners Tutorial
C# Contractors
C# Consulting
Links
C# Manual
Contact Us
Legal

GoDiagram for .NET from Northwoods Software www.nwoods.com


              
Printable Version

Virtual In C#
By Ravinder Bassi

Methods, properties, and indexers can be virtual, which means that their implementation can be overridden in derived classes.

The example:

using System;
class CAbc
{
 public virtual void F() { Console.WriteLine("CAbc.F"); }
}
class CBcd: CAbc
{
 public override void F() { 
  base.F();
  Console.WriteLine("CBcd.F"); 
 }
}
class Test
{
 static void Main() {
  CBcd b = new CBcd();
  b.F();
  CAbc a = b; 
  a.F();
 }
}
This shows a class CAbc with a virtual method F, and a class CBcd that overrides F. The overriding method in B contains a call base.F() which calls the overridden method in A.