当前位置: 编程技术>.net/c#/asp.net
ASP.NET方法如何重载需要必备哪些条件
来源: 互联网 发布时间:2014-08-25
本文导语: 决定方法是否构成重载有以下几个条件: ◆ 在同一个类中; ◆ 方法名相同; ◆ 参数列表不同。 在设计重载方法的时候应该注意一下事项 1 避免随意更改重载中的参数名称。如果某个重载的一个参数与另一个重载的一个参数...
决定方法是否构成重载有以下几个条件:
◆ 在同一个类中;
◆ 方法名相同;
◆ 参数列表不同。
在设计重载方法的时候应该注意一下事项
1 避免随意更改重载中的参数名称。如果某个重载的一个参数与另一个重载的一个参数表示相同的输入,则这两个参数应具有同样的名称。
例如,不要执行下面的操作:
public void Write(string message, FileStream stream){}
public void Write(string line, FileStream file,bool closeStream){}
这些重载的正确定义如下所示
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
保持重载成员参数的顺序一致性。在所有重载中,同名参数的位置应该相同。
例如,不要执行下面的操作:
public void Write(string message, FileStream stream){}
public void Write(FileStream stream, string message, bool closeStream){}
这些重载的正确定义如下所示:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
以上两种写法结构清晰,增强代码的可读性,更加适合规范。
此准则有两项约束:
如果重载采用变量参数列表,则该列表必须是最后一个参数。
如果重载采用 out 参数,按照约定,这类参数应作为最后的参数
如果需要具有扩展性,将最长的重载作为虚重载。较短的重载只应逐步调用较长的重载。
与override重写的区别
Override是指父类和子类之间方法的继承关系,这些方法有着相同的名称和参数类型。
◆ 在同一个类中;
◆ 方法名相同;
◆ 参数列表不同。
在设计重载方法的时候应该注意一下事项
1 避免随意更改重载中的参数名称。如果某个重载的一个参数与另一个重载的一个参数表示相同的输入,则这两个参数应具有同样的名称。
例如,不要执行下面的操作:
代码如下:
public void Write(string message, FileStream stream){}
public void Write(string line, FileStream file,bool closeStream){}
这些重载的正确定义如下所示
代码如下:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
保持重载成员参数的顺序一致性。在所有重载中,同名参数的位置应该相同。
例如,不要执行下面的操作:
代码如下:
public void Write(string message, FileStream stream){}
public void Write(FileStream stream, string message, bool closeStream){}
这些重载的正确定义如下所示:
代码如下:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
以上两种写法结构清晰,增强代码的可读性,更加适合规范。
此准则有两项约束:
如果重载采用变量参数列表,则该列表必须是最后一个参数。
如果重载采用 out 参数,按照约定,这类参数应作为最后的参数
如果需要具有扩展性,将最长的重载作为虚重载。较短的重载只应逐步调用较长的重载。
与override重写的区别
Override是指父类和子类之间方法的继承关系,这些方法有着相同的名称和参数类型。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。