zoukankan      html  css  js  c++  java
  • C#接口的显示实现和隐示实现

      

    接口的实现很多人都知道,但接口的实现方式分显示实现和隐示实现不知道是不是很多人知道呢!但我觉的公司技术部里很少提到这。

      目前常用的方式:


      public interface IReview 
      { 
      
    void GetReviews(); 
      } 
      
    public class ShopReview : IReview 
      { 
      
    public void GetReviews() { } 
      }

      这种方式是隐示实现:


      IReview rv = new ShopReview();rv.GetReviews(); 
      ShopReview rv 
    = new ShopReview();rv.GetReviews();

      都可以调用GetReviews这个方法。

      还有一种方式是显示实现:


      public interface IReview 
      { 
      
    void GetReviews(); 
      } 
      
    public class ShopReview : IReview 
      { 
      
    void IReview.GetReviews() { } 
      }

         通过这种方式的接口实现。GetReviews就只能通过接口来调用:IReview rv = new ShopReview();rv.GetReviews(); 下面的这种方式将会编译错误:ShopReview rv = new ShopReview();rv.GetReviews(); 结论:隐示实现接口和类都可以访问显示实现只有接口可以访问。显示实现益处1:隐藏代码的实现2:在使用接口访问的系统中,调用者只能通过接口调用而不是底层的类来访问。

  • 相关阅读:
    CentOS6.5升级内核到3.10.28的记录
    redis集群搭建,手把手教学
    zookeeper集群搭建,这一篇就够了
    Caused by: java.sql.SQLException: Column 'show_type' not found
    zkEnv.sh: Syntax error: "(" unexpected (expecting "fi")记录一下解决方法。。。
    http分层
    浏览器
    less
    333
    CSS 解决方案
  • 原文地址:https://www.cnblogs.com/xienb/p/2570920.html
Copyright © 2011-2022 走看看