C#方法的重載
方法重載是指在一個(gè)類中定義多個(gè)同名的方法,但要求每個(gè)方法具有不同的參數(shù)的類型或參數(shù)的個(gè)數(shù)。調(diào)用重載方法時(shí),編譯器能通過(guò)檢查調(diào)用的方法的參數(shù)類型和個(gè)數(shù)選擇一個(gè)恰當(dāng)?shù)姆椒?。方法重載通常用于創(chuàng)建完成一組任務(wù)相似但參數(shù)的類型或參數(shù)的個(gè)數(shù)或參數(shù)的順序不同的方法。 方法重載,就是在類中可以創(chuàng)建多個(gè)方法,它們可以有相同的名字,但必須具有不同的參數(shù),即或者是參數(shù)的個(gè)數(shù)不同,或者是參數(shù)的類型不同。調(diào)用方法時(shí)通過(guò)傳遞給它們的不同個(gè)數(shù)和類型的參數(shù),以及傳入?yún)?shù)的順序來(lái)決定具體使用哪個(gè)方法。
實(shí)例: 先在頁(yè)面拉幾個(gè)Button
<html xmlns="http://www./1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="沒(méi)有參數(shù)" OnCommand="Button1_Command" />
<asp:Button ID="Button2" runat="server" Text="一個(gè)參數(shù)" OnCommand="Button2_Command" />
<asp:Button ID="Button3" runat="server" Text="兩個(gè)參數(shù)" OnCommand="Button3_Command" />
<asp:Button ID="Button4" runat="server" Text="三個(gè)參數(shù)" OnCommand="Button4_Command" />
<asp:Button ID="Button5" runat="server" Text="四個(gè)參數(shù)" OnClick="Button5_Click" />
</div>
</form>
</body>
</html>
在后臺(tái)觸發(fā)Button的單擊事件,調(diào)用方法并彈出結(jié)果。
namespace WebApplication1
{
public partial class Index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
}
}
/// <summary>
/// 沒(méi)有參數(shù)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Command(object sender, CommandEventArgs e)
{
Response.Write("<script>alert('" Override() "')</script>");
}
/// <summary>
/// 一個(gè)參數(shù)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button2_Command(object sender, CommandEventArgs e)
{
Response.Write("<script>alert('" Override(1) "')</script>");
}
/// <summary>
/// 兩個(gè)參數(shù)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button3_Command(object sender, CommandEventArgs e)
{
Response.Write("<script>alert('" Override(1,"兩個(gè)") "')</script>");
}
/// <summary>
/// 三個(gè)參數(shù)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button4_Command(object sender, CommandEventArgs e)
{
Response.Write("<script>alert('" Override(1,"三個(gè)",2.2f) "')</script>");
}
/// <summary>
/// 四個(gè)參數(shù)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button5_Click(object sender, EventArgs e)
{
Response.Write("<script>alert('" Override(1,"四個(gè)",2.2f,'a') "')</script>");
}
public string Override()
{
return "沒(méi)有參數(shù):";
}
public string Override(int a)
{
return "一個(gè)參數(shù):" a;
}
public string Override(int a,string str)
{
return "兩個(gè)參數(shù): " a " " str;
}
public string Override(int a, string str,float b)
{
return "三個(gè)參數(shù): " a " " str " " b;
}
public string Override(int a, string str, float b,char cha)
{
return "四個(gè)參數(shù): " a " " str " " b " " cha;
}
}
}
來(lái)源:https://www./content-1-901801.html
|