Free Articles, Free Web Content, Reprint Articles
Friday, June 1, 2012
 
Free Articles, Free Web Content, Reprint ArticlesRegisterAll CategoriesTop AuthorsSubmit Article (Article Submission)ContactSubscribe Free Articles, Free Web Content, Reprint Articles
ADVERTISEMENTS
 

Virtual Methods & Polymorphism in C#

Virtual methods allow object oriented ... to express ... means that a derived class can write a method with the same ... as a methd in its base class, and the bas class will

Virtual methods allow object oriented languages to express polymorphism.This means that a derived class can write a method with the same signature as a methd in its base class, and the bas class will call the derived class's method.By default in java, all methods are virtual.

In C# like c++, the virtual keyword is needed to specify that a method should override a method (or implementaion an abstract method) of its base class.

Class B {
public virtual void foo () {}

}
ClassD : B {
public override void foo () {}
}

Attemting to override a non-virtual method will results in a compile-time error unless the "new" keyword is added to the declaration, indicating the method is intentionally hiding the base clas's method.

Class N : D {
public new void foo () {}
}
N n = new N ();n.foo; // calls N's foo ((D)n).foo; // calls D's foo
((B)n).foo(); //calls D's foo

In contrast to both c++ and Java, requiring the override keyword makes
it more clear as to what methods are overridden when looking at source
code.However, requiring the use of the virtual methods has its pros and
cons. The first pro is the slightly increased execution speed from
avoiding virtual methods.The second pro is to make clear what methods are
intended to be overridden.However, this pro can also be a con.Compare
the default option of leaving out a final modifier in Java Vs leaving out
a virtual modifier in C++. The default option in Java may make your
program slightly less efficient, but in C++ it may prevent extendibility,
albeit unforeseenPsychology Articles, by the implementer of the base class.

Source: Free Articles from ArticlesFactory.com

ABOUT THE AUTHOR


Pawan Bangar,
Technical Director,
Birbals,
India



Health
Business
Finance
Travel
Home Repair
Technology
Computers
Family
Communication
Entertainment
Autos
Marketing
Self Help
Sports
Home Business
Education
ECommerce
Law
Other
Internet
Partners


Page loaded in 0.034 seconds