C#方法的重载

C#方法的重载

方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数或参数的顺序不同的方法。 方法重载,就是在类中可以创建多个方法,它们可以有相同的名字,但必须具有不同的参数,即或者是参数的个数不同,或者是参数的类型不同。调用方法时通过传递给它们的不同个数和类型的参数,以及传入参数的顺序来决定具体使用哪个方法。

实例:
先在页面拉几个Button

<html xmlns="http://www.w3.org/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="没有参数" OnCommand="Button1_Command" />
            <asp:Button ID="Button2" runat="server" Text="一个参数" OnCommand="Button2_Command"  />
            <asp:Button ID="Button3" runat="server" Text="两个参数" OnCommand="Button3_Command"  />
            <asp:Button ID="Button4" runat="server" Text="三个参数" OnCommand="Button4_Command"  />
            <asp:Button ID="Button5" runat="server" Text="四个参数" OnClick="Button5_Click"  />
        </div>
    </form>
</body>
</html>

在后台触发Button的单击事件,调用方法并弹出结果。

namespace WebApplication1
{
    public partial class Index : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {

            }
        }

        /// <summary>
        /// 没有参数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Command(object sender, CommandEventArgs e)
        {
            Response.Write("<script>alert('"  Override()  "')</script>");
        }

        /// <summary>
        /// 一个参数
        /// </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>
        /// 两个参数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button3_Command(object sender, CommandEventArgs e)
        {
            Response.Write("<script>alert('"   Override(1,"两个")   "')</script>");
        }
        /// <summary>
        /// 三个参数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button4_Command(object sender, CommandEventArgs e)
        {
            Response.Write("<script>alert('"   Override(1,"三个",2.2f)   "')</script>");
        }
        /// <summary>
        /// 四个参数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button5_Click(object sender, EventArgs e)
        {
            Response.Write("<script>alert('"   Override(1,"四个",2.2f,'a')   "')</script>");
        }

        public string Override()
        {
            return "没有参数:";
        }
        public string Override(int a)
        {
            return "一个参数:"   a;
        }
        public string Override(int a,string str)
        {
            return "两个参数:  "   a "   " str;
        }
        public string Override(int a, string str,float b)
        {
            return "三个参数:  "   a   "   "   str "   " b;
        }
        public string Override(int a, string str, float b,char cha)
        {
            return "四个参数:  "   a   "   "   str   "   "   b "   " cha;
        }

    }
}

来源:https://www.icode9.com/content-1-901801.html

(0)

相关推荐

  • .net C# MultiView制作tab 效果

    前端如下: <asp:Button ID="Button2" runat="server" Text="Button" OnClick ...

  • Java的方法重载规则

    Java中的方法,即函数(文中我们统称之为"方法"),是一个固定的一个程序段,或称其为一个子程序,它在可以实现固定运算功能.而且,同时还带有一个入口和一个出口,所谓的入口,就是函数 ...

  • Java中方法的重载详解(含系统配套视频)

    一.方法的概念 在之前我们学习了方法的定义,方法实现指定功能的代码块的组合,基本的定义 如下: 访问修饰符[static] 返回值类型[如果不需要返回值使用void]方法名(参数类型 参数名,参数类型 ...

  • 面向对象02:方法的重载

    一.重载(overload) 发生在一个类中 方法的签名:方法名 参数列表.一个类中有且只有一个签名 Java语言中,允许多个方法的名称相同,但参数列表不同,称之为方法的重载(overload)编译器 ...

  • JAVA带参方法的使用、构造方法、方法的重载

    JAVA带参方法的使用、构造方法、方法的重载

  • 方法重载与可变参数与递归

    举例说明: //方法有修饰符,返回值类型,方法名,参数类型,参数名public static int name(int a,int b){//这里是形参,主方法内调用并给真实传递的才是实参 //方法体 ...

  • 方法重载

    方法名必须相同,参数列表不同(类型或个数或排列顺序不同) public static int max(int num1, int num2) { //方法体 } public static doubl ...

  • Java面向对象中:方法重载和方法重写以及区别、 this关键字和super关键字以及区别

    2020-04-13 Java面向对象中:方法重载和方法重写 .  this关键字和super关键字 方法重载:是指同一个类中的多个方法具有相同的名字,但这些方法具有不同的参数列表,即参数的数量或参数 ...

  • Java学习:方法重载的使用规则

    方法的重载 对于功能类似的方法来说,因为参数列表不一样,却需要记住那多不同的方法名称,太麻烦. 方法的重载(Overload):多个方法的名称一样,但是参数列表不一样. 好处:只需要记住唯一一个方法名 ...

  • 方法覆盖和方法重载必须满足的条件

    方法覆盖必须满足下列条件(1) 子类的方法的名称及参数必须和所覆盖的方法相同(2) 子类的方法返回类型必须和所覆盖的方法相同(3) 子类方法不能缩小所覆盖方法的访问权限(4) 子类方法不能抛出比所覆盖 ...