Tra*_*rap 5 c# inheritance alias typedef
换句话说,使用是否正确:
public class CustomerList : System.Collections.Generic.List<Customer>
{
/// supposed to be empty
}
Run Code Online (Sandbox Code Playgroud)
代替:
using CustomerList = System.Collections.Generic.List<Customer>
Run Code Online (Sandbox Code Playgroud)
我宁愿使用第一种方法,因为我只需要定义一次CustomerList,每次我需要一个客户列表时,我总是使用相同的类型.另一方面,使用名称别名方法不仅迫使我必须在任何地方重新定义它,而且每次有人想要使用它时都会给出不同的别名(想想一个大团队),从而导致代码不太可读.
请注意,在这种情况下的意图永远不会扩展类,只是为了创建一个别名.
Ed *_* S. 11
好吧,除非你在基类中添加一些功能,否则创建包装器对象是没有意义的.如果你真的需要,我会选择第二,但为什么不创建一个变量呢?
List<Customer> customerList = new List<Customer>();
Run Code Online (Sandbox Code Playgroud)
不要这样做.当人们读到:
List<Customer>
Run Code Online (Sandbox Code Playgroud)
他们立即明白了.当他们读到:
CustomerList
Run Code Online (Sandbox Code Playgroud)
他们必须去弄清楚CustomerList是什么,这会让你的代码更难阅读.除非你是唯一一个在代码库上工作的人,否则编写可读代码是个好主意.