8.8声明方法的参数类型

总结起来两点:一、参数类型应尽可能指定最弱类型,并且最好在基类上定义接口--相对于在C#中使用接口体系设计系统结构;

 

public void ManipulateItems<T>(IEnumerable<T> collection){...}

//而不要采用 

 

亦可以使用基类体系,比如C++这种没有单独的接口概念定义的。

public void ProcessBytes(Stream someStream){...}
//而不要采用
public void ProcessBytes(FileStream fileStream){...}

 二、返回类型应尽可能指定最强类型

public IList<String> GetStringCollection(){...}
//而不要
public List<String> GetStringCollection(){...} 
public FileStream OpenFile(){...}
//而不要
public Stream OpenFile(){...}

 

 

 

相关文章:

  • 2021-09-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-09
  • 2022-12-23
  • 2021-11-05
  • 2022-02-13
猜你喜欢
  • 2022-02-16
  • 2022-01-04
  • 2021-09-22
  • 2021-09-25
  • 2021-09-09
  • 2022-12-23
相关资源
相似解决方案