virtual interface implementation

To open the possibility for subclass to reimplement members from interface we can add virtual keyword to the implementation.


using System;
interface Printable{
    void print();
}

class Shape : Printable{
   public virtual void print(){
     Console.WriteLine("shape");
   }
}

class Rectangle : Shape{
   public override void print(){
     Console.WriteLine("rectangle");
   }
}


class Test
{
    static void Main()
    {

        Shape s = new Shape();
        s.print();

        Rectangle r = new Rectangle();
        r.print();

    }
}

The output:


shape
rectangle
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.