C#入门8.8——方法的重载

    xiaoxiao2026-03-04  6

    方法重载是一种操作性多态。有的时候,可能需要在多个不同的实现中对不同的数据执行相同的逻辑操作。以WriteLine方法为例,有时可能向它传递一个格式字符串和其他一些参数,也可能只向它传递一个整数。两者的具体实现肯定是不同的,但在逻辑上,这个方法负责的是输出数据。至于方法内部具体是如何实现的,很多读者并不关心。

    在面向对象这样的高级语言中,都允许在一个类中定义多个方法名相同、方法中参数个数和参数顺序不同的方法,对于参数个数不同或者参数列表不同的情况称之为参数列表不同。

    需要注意的是这里没有提到方法的返回值。

    实例:

    利用重载分别求圆、矩形、三角形的面积

    海伦公式:S=sqrt(p(p-a)(p-b)(p-c))     p为周长的一半。

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication8 { class Program { //写在同一类中 //求圆面积 static void writeArea(int radius) { double area = System.Math.PI * radius * radius; Console.WriteLine("您求圆的面积是:"+area); } //求矩形面积 static void writeArea(int width,int length) { int area = width * length; Console.WriteLine("您求矩形的面积是:"+area); } //求三角形面积 static void writeArea(int a,int b,int c) { double p = (a + b + c) / 2; double area = System.Math.Sqrt(p * (p - a) * (p - b) * (p - c)); Console.WriteLine("您求三角形的面积是:"+area); } static void Main(string[] args) { //利用方法的重载进行调用方法 writeArea(3, 4, 5); writeArea(25); writeArea(10, 20); Console.ReadKey(); } } }

    转载请注明原文地址: https://ju.6miu.com/read-1307593.html
    最新回复(0)