C# 方法重载

**方法重载
概念:方法的重载指的是方法的名称相同,但是参数不同。
参数不同,分为两种情况:
1)如果参数的个数相同,那么参数的类型就不能够相同。
2) 如果参数的类型相同,那么参数的个数就不能相同。
**方法的重载跟返回值没有关系。

using System;

namespace 方法重载
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(1);
            Console.WriteLine(1.4);
            Console.WriteLine(true);
            Console.WriteLine('c');
            Console.WriteLine("123");
            Console.WriteLine(5000m);
            Console.ReadKey();
        }

        public static void M(int n1,int n2)
        {
            int result = n1 + n2;
        }

        public static double M(double d1,double d2)
        {
            return d1 + d2;
        }

        public static void M(int n1,int n2,int n3)
        {
            int result = n1 + n2 + n3;
        }

        public static string M(string s1,string s2)
        {
            return s1 + s2;
        }
    }
}

判断下面四段代码是否属于重载:
A)

static void SayHello(string name)
    {
		Console.WriteLine("我是{0}", name);
    }
	static void SayHello(string name)
    {
		Console.WriteLine("I am {0}", name);
    }

B)

static void SayHello(string name)
    {
		Console.WriteLine("我是{0}", name);
    }
	static void SayHello(int age)
    {
		Console.WriteLine("我的年龄{0}", age);
    }

C)

static void SayHello(string name)
    {
		Console.WriteLine("我是{0}", name);
    }
	static int SayHello(string name)
    {
		return 10;
    }

D)

static void SayHello(string name,string nickname)
    {
		Console.WriteLine("我是{0}",name);
    }
	static void SayHello(string name,string nickname)
    {
		Console.WriteLine("我是{0},昵称是{ 1}", name, nickname);
    }

答案是:B、C是重载。

你可能感兴趣的:(C#,方法重载)