interface ISample
    {
        void Method1();
    }
   class Classone
    {
        public void Method1()   //这里的Method1是不是接口中的Method1?        {
            Console.WriteLine("汤姆");
        }
    }
    class ClassTwo :Classone,ISample
    {
        
    }
    class ClassExample
    {
        public static void Main()
        {
            ISample sample = new ClassTwo();
            sample.Method1();
            Console.ReadKey();
        }    
    }此代码讲的是对于接口的实现,在基类中进行。不过,我认为sample.Method1();这里的Method1并非Classone中的Method1吧,只不过是方法名称相同而已,因为Classone并没有实现接口
再所以,上面这幅图似乎不正确,当然,这是我个人的认识,请大家帮忙解释一下

解决方案 »

  1.   

    不是...因为你的Classone和ISample没有任何关系...叫李刚的很多,仅仅是重名而已...
      

  2.   

    没注意ClassTwo...ClassTwo继承了Classone也继承了ISample...所以是ClassTwo的Method1方法实现了ISample接口,但即使如此,也只能说ClassTwo实现了ISample,Classone和ISample还是没有任何关系...
      

  3.   

    interface ISample
    class Classone 没有继承ISample
    ClassTwo Classone 也没关闭
      

  4.   

    不是 因为 Classone 没有实现ISample
    按图来看 你忘记Classone:ISample了就是实现了也不是ISample的Method1
    他依然是Classone的但是用多态的时候
    你可以sample.Method1() 调用到Classone(实现了才可以)