接口函数还可以声明为private

                以私有化方式实现接口中的函数,我是第一次听说,下面就来看看:

                首先声明一个接口:

        public interface ITest

    {

        void Test1();

        void Test2();

}

   接下来,我们再来实现接口

    public class Test : ITest

    {

        public void Test1()

        {

            Console.WriteLine("Test1");

        }

 

        void ITest.Test2()

        {

            Console.WriteLine("Test2");

        }

}

   注意:对于Test2方法是以这种方式来满足接口要求的

   我们再用客户端验证一下:

    class Program

    {

        static void Main(string[] args)

        {

            Test tt = new Test();

            tt.Test1();

            Console.Read();

        }

}

   但是如果我要调用ttTest2方法会发现:


 


       
实例化的对象已经看不见Test2方法了,那如果我们想调用Test2方法有如何解决呢?我们可以这样做:

        static void Main(string[] args)

        {

            ITest itt = new Test();

            itt.Test1();

            itt.Test2();

            Console.Read();

    }

   以接口对象的方式声明,产生实际对象,这样就可以看见Test2方法了,运行结果是:

Test1

Test2

posted @ 2007-03-01 21:01  KiddLee  Views(2290)  Comments(6Edit  收藏  举报