企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
>访问修饰符: * public 无访问限制 * protected 所在类及派生类才能访问 * internal 所在类才能访问 * private 只能在其声明类中使用 ### 字段 ``` public int a=100; ``` ### 属性 结构 ``` 访问修饰符 数据类型 属性名{ get{ return 变量名; } set{ 变量名=value; } } ``` 实例: ``` public int A{ get{ return a; } set{ a=value; } } ``` ### 方法 >修饰符包含:public、protected、internal、private、new、static、virtual、override、sealed、abstract、extern >* static、virtual、override只能选其一 >* new、override只能选其一 >* 如果被abstrct修饰则virtual、static、sealed、extern则不能在出现 >* 如果被private修饰则virtual、override、abstract则不能在出现 >* 如果被sealed修饰 则还包含override 方法的参数类型 * param:指定在参数数目可变时采用的方法参数 * ref 参数按引用传递,形参与实参是同一内存,方法里对参数做的改变都将反应在该变量中ref修饰的参数在传递之前必须进行初始化 * out 与ref效果差不多,不同之处是修饰的参数在传递之前无需初始化 例子: ``` static void Useparam(params string[] list) { for (int i = 0; i < list.Length; i++) { Console.WriteLine(list[i]); } } string[] strName=new string[5]{"我","是","中","国","人"} Useparam(strName) public static void Method(ref int i) { i = 44; } int val=0; Method(ref val); public static void Method(out int i) { i = 44; } int value; Method(out value) ``` ### 方法重载 >方法名同名(包括大小写),但是参数不同(如参数个数,参数的类型、参数的顺序等) >只要参数不同就算重载,于修饰符、返回类型等没有关系 ``` public static int Reload(int x, int y) { return x + y; } public int Reload(int x, int y, int z) { return x + y + z; } public double Reload(int x, double y) { return x + y; } public double Reload( double y, int x) { return x + y; } ```