方法的重载

  • 格式:ppt
  • 大小:251.50 KB
  • 文档页数:9

下载文档原格式

  / 9
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
public int Max(int[] a) { }
作业
利用方法重载实现不同数据类型的加法(2个整形、2个双 精度、2个字符串等)
class MyAdd { public static int Add(int a, int b) { return a + b; } public static double Add(double a, double b) { return a + b; } public static string Add(string s1, string s2) { return s1 + s2; } }
利用方法重载实现2个整数,2个双精度数,3个整数中求 最大值。
6、注意
在使用重载时只能通过不同的参数样式。例如,不同的参 数类型,不同的参数个数,不同的参数顺序。
同能通过访问权限、返回类型、抛出的异常进行重载。 方法的异常类型和数目不会对重载造成影响。
练习
完善示例,加入求一个数组中的最大值。
在同一个类中; 方法名相同; 参数列表不同。
3、方法重载要求:
(1) 重载的方法名称必须相同;
(2) 重载方法的形参个数或类型必须不同,否则将出现一个 “已定义了一个具有相同参数类型的成员”。
4、问题实现
如果要完成上例相似功能的4个方法,重载方法如下:

public int Max(int a, int b) { }
public int MaxIntTwo(int a, int b) { } public double MaxDouble(double a, double b) { } public int MaxIntThree(int a, int b, int c) { } public int MaxArray(int[] a) { }

public double Max(double a, double b) { }
Fra Baidu bibliotek
public int Max(int a, int b, int c) { }

public int Max(int[] a) { }
在调用具有重载的方法时,系统会根据参数的类型或个数
确定最匹配的方法被调用。
5、示例
方法的重载
教学目标:
能理解方法的重载。 学会方法的重载的应用。
1、问题引入
在编程时,一般是一个方法对应一种功能,但有时需要实现同一类功 能,只是有些细节不同。例如希望从几个数中找出其中的最大者,而 每次数据个数或类型不同,如2个整数,2个双精度数、3个整数、或 一个整型数组做为参数。这时,我们可以设计出4个不同名的方法, 其形式为:
程序者需要以不同的方法名来命名这些功能类似的方法,而调用者更 需记住不同的方法名,不是很方便。
2、问题解决——重载
在C#中,允许用同一方法名定义多个方法,这些方法的 参数个数或参数类型不同,这就是方法的重载(function overloading)。
决定方法是否构成重载有以下几个条件: