什么是方法Method方法Method是 C# 中用于封装一组执行特定功能代码的成员。通过方法可以提高代码的复用性、可读性和维护性。简单来说方法就是完成某项任务的代码块。一、方法的基本语法访问修饰符 返回类型 方法名(参数列表) { // 方法体 return 返回值; }示例using System; class Program { static void Main() { SayHello(); } static void SayHello() { Console.WriteLine(Hello World!); } }输出Hello World!1.方法组成部分以以下方法为例public static int Add(int a, int b) { return a b; }组成部分说明组成部分说明public访问修饰符static静态方法int返回值类型Add方法名称(int a, int b)参数列表return返回结果1.1无参数无返回值方法static void PrintMessage() { Console.WriteLine(欢迎学习C#); }调用PrintMessage();特点没有参数没有返回值返回类型使用void1.2有参数无返回值方法static void PrintName(string name) { Console.WriteLine(姓名 name); }调用PrintName(张三);输出姓名张三1.3无参数有返回值方法static string GetTime() { return DateTime.Now.ToString(); }调用string time GetTime(); Console.WriteLine(time);1.4有参数有返回值方法static int Sum(int num1, int num2) { return num1 num2; }调用int result Sum(10, 20); Console.WriteLine(result);输出30二、参数传递方式1. 值传递默认static void ChangeValue(int num) { num 100; } int a 10; ChangeValue(a); Console.WriteLine(a);输出10说明方法修改的是副本原变量不受影响2. ref 参数必须先赋值才能传入。static void ChangeValue(ref int num) { num 100; } int a 10; ChangeValue(ref a); Console.WriteLine(a);输出1003. out 参数用于返回多个结果。static void GetData(out string name, out int age) { name 张三; age 18; } string name; int age; GetData(out name, out age);4. in 参数只读引用传递。static void Show(in int num) { Console.WriteLine(num); }特点性能高方法内部不可修改可选参数static void ShowInfo(string name, int age 18) { Console.WriteLine(${name}-{age}); }调用ShowInfo(张三); ShowInfo(李四, 25);输出张三-18 李四-25命名参数ShowInfo(age: 20, name: 王五);优点提高代码可读性参数顺序可调整params 可变参数允许传入不确定数量的参数。static int Sum(params int[] nums) { int total 0; foreach (int num in nums) { total num; } return total; }调用Console.WriteLine(Sum(1,2,3)); Console.WriteLine(Sum(1,2,3,4,5));输出6 15方法重载Overload同一个方法名不同参数列表。static int Add(int a, int b) { return a b; } static double Add(double a, double b) { return a b; } static int Add(int a, int b, int c) { return a b c; }调用Add(1, 2); Add(1.5, 2.5); Add(1, 2, 3);三、递归方法方法调用自身。计算阶乘static int Factorial(int n) { if (n 1) return 1; return n * Factorial(n - 1); }调用Console.WriteLine(Factorial(5));输出120四、静态方法与实例方法1.静态方法属于类本身。class MathHelper { public static int Add(int a, int b) { return a b; } }调用MathHelper.Add(1, 2);实例方法属于对象。class Person { public void SayHello() { Console.WriteLine(你好); } }调用Person p new Person(); p.SayHello();2.表达式主体方法适用于简单逻辑。static int Square(int x) x * x;等价于static int Square(int x) { return x * x; }3.局部函数Local Function方法内部定义方法。static void Main() { int Add(int a, int b) { return a b; } Console.WriteLine(Add(1, 2)); }方法设计原则单一职责原则一个方法只完成一项功能。❌ 不推荐void Process() { // 查询数据 // 计算数据 // 保存数据 // 打印日志 }✅ 推荐GetData(); CalculateData(); SaveData(); WriteLog();方法命名规范推荐使用动词开头GetUser() CreateOrder() DeleteFile() UpdateData() SaveChanges()避免Data() User() Info()总结C# 方法是实现代码复用和模块化开发的重要基础。掌握方法的定义、调用、参数传递值、ref、out、in、可选参数、可变参数、方法重载、递归以及静态与实例方法的区别有助于编写结构清晰、易维护的程序。在实际开发中应遵循单一职责原则和规范的命名习惯使代码更加专业和高效。