C#中,可以用两种方式重载方法:
指定不同个数的参数
指定不同的参数类型
看理论有点摸不着头~~~~,还是找两个例子来理解......
//指定不同个数的参数例子:
using System;
public class MethodOverload
{
int net_sal;
int basic_sal;
int allow;
int deduct;
public void calculate(int intBasic) //一个参数
{
basic_sal=intBasic;
Console.WriteLine("基本工资:"+basic_sal);
}
public void calculate(int intDeduct,int intAllow) //两个参数
{
allow=intAllow;
deduct=intDeduct;
Console.WriteLine("津贴:"+allow);
Console.WriteLine("扣除额:"+deduct);
}
public void calculate()
{
net_sal=(basic_sal+allow)-deduct;
Console.WriteLine("实际工资:"+net_sal);
}
static void Main()
{
MethodOverload objMO=new MethodOverload();
objMO.calculate(8500); //参数个数为1个则运行只有一个参数的calculate(int int Basic)
objMO.calculate(1000,800); //参数个数为2个则运行有两个参数的calculate(int intDeduct,int intAllow)
objMO.calculate();
}
}
//不同的参数类型的例子:
using System;
public class MethodOverload
{
int money;
string myname;
public void show (string strName) //字符型
{
myname=strName;
Console.WriteLine("我的名字:"+myname);
}
public void show(int intmoney) //整型
{
money=intmoney;
Console.WriteLine(myname+"要"+money+"万!哈哈哈!!!");
}
static void Main()
{
MethodOverload metOver=new MethodOverload();
metOver.show("joe790"); //当是字符型参数时执行show(string strName)
metOver.show(500); //当是数值型参数时执行show(int intmoney)
}
}
看了例子就明白了:
C#中会按不同的参数类型或个数调用相应的方法.
指定不同个数的参数
指定不同的参数类型
看理论有点摸不着头~~~~,还是找两个例子来理解......
//指定不同个数的参数例子:
using System;
public class MethodOverload
{
int net_sal;
int basic_sal;
int allow;
int deduct;
public void calculate(int intBasic) //一个参数
{
basic_sal=intBasic;
Console.WriteLine("基本工资:"+basic_sal);
}
public void calculate(int intDeduct,int intAllow) //两个参数
{
allow=intAllow;
deduct=intDeduct;
Console.WriteLine("津贴:"+allow);
Console.WriteLine("扣除额:"+deduct);
}
public void calculate()
{
net_sal=(basic_sal+allow)-deduct;
Console.WriteLine("实际工资:"+net_sal);
}
static void Main()
{
MethodOverload objMO=new MethodOverload();
objMO.calculate(8500); //参数个数为1个则运行只有一个参数的calculate(int int Basic)
objMO.calculate(1000,800); //参数个数为2个则运行有两个参数的calculate(int intDeduct,int intAllow)
objMO.calculate();
}
}
//不同的参数类型的例子:
using System;
public class MethodOverload
{
int money;
string myname;
public void show (string strName) //字符型
{
myname=strName;
Console.WriteLine("我的名字:"+myname);
}
public void show(int intmoney) //整型
{
money=intmoney;
Console.WriteLine(myname+"要"+money+"万!哈哈哈!!!");
}
static void Main()
{
MethodOverload metOver=new MethodOverload();
metOver.show("joe790"); //当是字符型参数时执行show(string strName)
metOver.show(500); //当是数值型参数时执行show(int intmoney)
}
}
看了例子就明白了:
C#中会按不同的参数类型或个数调用相应的方法.