public static void Main()
    {
        //* MyImplicitClass instance would work with either the class or the Interface:
        ImplicitClass _class = new ImplicitClass();
        _class.Method();
        IInterface _interface = new ImplicitClass();
        _interface.Method();

        //* ExplicitClass would work only with the interface:
        ExplicitClass obj = new ExplicitClass();
        //* The following line would not work and will generate a compiler error.
        //obj.Method();
        //* Using 'var' will declare as the class, so this also will fail
        //var obj = new ExplicitClass();
        //obj.Method();

        //* This will work
        IInterface _explicit = new ExplicitClass();
        _explicit.Method();
    }
Example #2
0
        public void Implicit()
        {
            ImplicitClass o = "foo";

            AssertEquals(o.Value, "foofoo");
        }
Example #3
0
 public void ImplicitMethod(ImplicitClass implicitClass)
 {
     this.implicitClass = implicitClass;
 }
Example #4
0
        public void Implicit()
        {
            ImplicitClass o = "foo";

            QUnit.AreEqual(o.Value, "foofoo");
        }