mysql 函数重载_C#方法重载(函数重载)
在講解《C#構造方法》時提到定義構造方法時提到可以定義帶 0 到多個參數的構造方法,但構造方法的名稱必須是類名。實際上,這就是一個典型的方法重載,即方法名稱相同、參數列表不同。
參數列表不同主要體現在參數個數或參數的數據類型不同。在調用重載的方法時系統是根據所傳 遞參數的不同判斷調用的是哪個方法。
【實例 1】創建一個名為 SumUtils 的類,在類中分別定義計算兩個整數、兩個小數、 兩個字符串類型的和,以及從 1 到給定整數的和。在 Main 方法中分別調用定義好的方法。
根據題目要求,分別定義 3 個帶兩個參數的方法,以及一個帶一個整型參數的方法,代碼如下。
class SumUtils
{
public int Sum(int a,int b)
{
return a + b;
}
public double Sum(double a,double b)
{
return a + b;
}
public string Sum(string a,string b)
{
return a + b;
}
public int Sum(int a)
{
int sum = 0;
for(int i = 1; i < a; i++)
{
sum += i;
}
return sum;
}
}
從上面的程序可以看出在該類中定義的方法名稱都是 Sum,僅是參數的類型或個數不同而已。在 Main 方法中調用上述定義的方法,代碼如下。
class Program
{
static void Main(string[] args)
{
SumUtils s = new SumUtils();
//調用兩個整數求和的方法
Console.WriteLine("兩個整數的和為:" + s.Sum(3, 5));
//調用兩個小數求和的方法
Console.WriteLine("兩個小數的和為:" + s.Sum(3.2, 5.6));
//調用兩個字符串連接的方法
Console.WriteLine("連個字符串的連接結果為:" + s.Sum("C#", "方法重載"));
//輸出 1 到 10 的和
Console.WriteLine("1 到 10 的和為:" + s.Sum(10));
}
}
在調用 Sum 時只是傳遞的參數不同,系統會自動識別參數來調用正確的方法。
執行上面的代碼,效果如下圖所示。
在該實例中演示的是一般方法的重載,構造方法也是可以重載的,在一個類中能定義 多個構造方法,以方便根據不同的需要完成不同的類成員初始化操作。
【實例 2】定義一個 SayHello 的類,在類中分別定義 3 個構造方法,一個是不帶參數 的構造方法,用于打印“Hello”; 一個是帶一個參數的構造方法傳遞一個用戶名,用于打 印“Hello Army”(Army 為傳入的用戶名);一個是帶兩個參數的構造方法傳遞一個用戶名 和年齡,用于打印“Hello Army,20”(Army 為傳入的用戶名、20 為傳入的年齡)。在 Main 方法中使用不同的構造器創建 SayHello 類的對象。
根據題目要求,代碼如下。
class SayHello
{
public SayHello()
{
Console.WriteLine("Hello");
}
public SayHello(string name)
{
Console.WriteLine("Hello " + name);
}
public SayHello(string name, int age)
{
Console.WriteLine("Hello " + name + "," + age);
}
}
在 Main 方法中分別通過上面定義的構造器創建類的對象,代碼如下。
class Program
{
static void Main(string[] args)
{
SayHello say1 = new SayHello();
SayHello say2 = new SayHello("小明");
SayHello say3 = new SayHello("張三", 20);
}
}
執行上面的代碼,效果如下圖所示。
總結
以上是生活随笔為你收集整理的mysql 函数重载_C#方法重载(函数重载)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java selenium 获取表格数据
- 下一篇: JAVA订单的输入输出_Java的输入/