C#-方法(八)


方法是什么
  方法是C#中将一堆代码进行进行重用的机制
  他是在类中实现一种特定功能的代码块,将重复性功能提取出来定义一个新的方法
  这样可以提高代码的复用性,使编写程序更加快捷迅速

 

方法格式

  访问修饰符 返回类型 方法名称(参数列表)
  {
    方法体;
  }

  方法是在类或结构中声明的,声明时需要访问修饰符、返回类型、方法名称、参数列表、方法体
    访问修饰符:声明方法对另一个类的可见性,如public、protect
    返回类型:方法可以有返回值也可以无返回值,无返回值时为void,有返回值时需要声明返回值得数据类型
    方法名称:方法的标识符,对大小写敏感
    参数列表:使用小括号括起来,跟在方法名称的后面,用来接收和传递方法的数据。可以有也可以无,根据需要确定
    方法主体:方法所执行的指令集合

 

示例

 1 using System;
 2 
 3 namespace NumberSwap
 4 { 
 5     class NumberManipulator
 6     {
 7         public int swap(ref int x, ref int y)  //返回值为int类型
 8         {
 9             int temp;
10 
11             temp = x;
12             x = y;
13             y = temp;
14 
15             int sum = x + y;
16             return sum;
17         }
18 
19         static void Main(string[] args)
20         {
21             NumberManipulator n = new NumberManipulator();
22 
23             int a = 100;
24             int b = 200;
25 
26             n.swap(ref a, ref b);  //调用方法
27             Console.WriteLine("调用方法swap后a的值:{0}", a);
28             Console.WriteLine("调用方法swap后b的值:{0}", b);
29 
30             Console.WriteLine("两数之和为:{0}", n.swap(ref a, ref b));
31         }
32     }
33 }

  结果

  

 

方法重载

  方法重载是在一个类中定义多个方法名相同、方法间参数个数和参数顺序不同的方法
  方法重载是让类以统一的方式处理不同类型数据的一种手段
  方法重载定义时有以下四个要求:
    方法名称必须相同
    参数个数必须不同(如果参数个数相同,那么类型必须不同)
    参数类型必须不同
    和返回值无关

示例 

 1 using System;
 2 
 3 namespace Calculator
 4 {
 5     class Program
 6     {
 7         /// <summary>
 8         /// 方法重载:无参
 9         /// </summary>
10         static void overloaded_func()
11         {
12             Console.WriteLine("方法重载,无参");
13         }
14 
15         /// <summary>
16         /// 方法重载:1个整型参数
17         /// </summary>
18         static void overloaded_func(int x)
19         {
20             Console.WriteLine("方法重载,一个整型参数");
21         }
22 
23         /// <summary>
24         /// 方法重载:1个字符串参数
25         /// </summary>
26         static void overloaded_func(string str)
27         {
28             Console.WriteLine("方法重载,一个字符串参数");
29         }
30 
31         /// <summary>
32         /// 方法重载:2个参数
33         /// </summary>
34         static void overloaded_func(int x, string str)
35         {
36             Console.WriteLine("方法重载,两个参数");
37         }
38 
39 
40         static void Main(string[] args)
41         {
42             // 方法重载1
43             overloaded_func();
44             // 方法重载2
45             overloaded_func(1);
46             // 方法重载3
47             overloaded_func(1, "重载");
48         }
49     }
50 }

  结果

  

  

 

posted @ 2018-09-09 15:08  Tynam.Yang  阅读(906)  评论(0编辑  收藏  举报