显示实现接口和隐式实现接口区别

先定义一个接口:

public Interface ICategory

{

      string GetName();

}

接着实现上面定义的接口:

public class Category:ICategory

{

      public string GetName()

       {

              return name;

       }

}

以上的方式是隐式的实现接口(我们默认的都是使用隐式的接口)

显式的实现接口方式:

public class Category:ICategory

{

       public string  ICategory.GetName()

        {

               return name;

         }

}

区别:

1. 隐式实现接口时,我们有两种方式调用实现接口的方法(GetName()),即:

ICategory category=new Category();

category.GetName();

Category category=new Category();

categoty.GetName();

 

2. 显式实现接口时,我们只有一种方法来调用GetName(),即:


ICategory category=new Category();

category.GetName();

 

结论:

1. 隐式实现接口时,接口和类(实现接口的类)都可以访问类中的方法;

2. 显式实现接口时,只有通过接口来访问类中的方法;

显式优点:

1.隐藏了实现接口的类的实现代码

posted @ 2015-09-22 11:33  无处安放的青春  阅读(1609)  评论(0编辑  收藏  举报