现在的位置: 首页 > 综合 > 正文

C#函数的重载

2013年10月01日 ⁄ 综合 ⁄ 共 1424字 ⁄ 字号 评论关闭

◆函数名必须相同方能构成函数重载;

◆函数返回值类型:可以相同,也可以不同(注意:函数的返回类型不足以区分两个重载函数);

◆函数参数类型:必须不同;

◆函数参数个数:可以相同,可以不同

◆函数参数顺序:可以相同,可以不同;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace ConsoleApplication

{

    class Circle

    {

       

        private const float PI = 3.141526F;



        //1.没有任何已知条件

        public static double Area()

        { 

            Console.WriteLine("空空如也!");

            return 0;

        

        }

        //2.已知圆心坐标

        public static double Area(int x1, int y1)

        {

            Console.WriteLine("这是一个圆点,坐标为({0},{1})",x1,y1);

            return 0;

        }

        //3.已知半径

        public static double Area(double r)

        {

            double theArea;

            theArea = PI * r * r;

            return theArea;



        }

        //4.已知圆心坐标和半径

        public static double Area(int x1, int y1, double r)

        {

            Console.WriteLine("这是一个圆点在({0},{1})半径为{2}的圆", x1, y1, r);

            return Area(r);

        

        }

        //5.已知圆心和圆周边上的一点

        public static double Area(int x1, int y1, int x2, int y2)

        {

            int x = x2 - x1;

            int y = y2 - y2;

            double r = (double)Math.Sqrt(x*x+y*y);

            Console.WriteLine("这是一个圆心在({0},{1}),圆周边一点在({2},{3})的圆,圆的半径为{4}",x1,y1,x2,y2,r);

            return Area(r);

        

        }

        static void Main(string[] args)

        {

            int x1=2,x2=4;          //x坐标

            int y1=3,y2=5;          //y坐标

            double radius=3;        //半径

            double CircleArea = 0;

            CircleArea = Area();

            Console.WriteLine("-->1.面积为{0}",CircleArea);

            Console.WriteLine();



            CircleArea = Area(x1,y1);

            Console.WriteLine("-->2.面积为{0}", CircleArea);

            Console.WriteLine();



            CircleArea = Area(radius);

            Console.WriteLine("-->3.面积为{0}", CircleArea);

            Console.WriteLine();



            CircleArea = Area(x1, y1, radius);

            Console.WriteLine("-->4.面积为{0}", CircleArea);

            Console.WriteLine();



            CircleArea = Area(x1, y1, x2, y2);

            Console.WriteLine("-->5.面积为{0}", CircleArea);

            Console.WriteLine();



            Console.ReadKey();



        }

       

    }

}

抱歉!评论已关闭.