hi! i have been playing around with interfaces... when i found something that puzzled me!?!
when i do something like this:
 
    interface D {
        int foo();
    }
    class A : D {
        int foo() { return 1; }
    }
    class B : D {
        void foo() { }    // error, no int foo() implementation
    }
i get the expected compiler error!!!
but when i change the interface D ( int foo() changed to static int foo() ):
 
    interface D {
        static int foo();
    }
 
... the compile error disappears!!! is it supposed? why does it happens?
 
best regards,
Miguel Ferreira Simões