C#中 类的成员

C#中类的成员有 方法, 构造函数(析构函数),字段,属性;对初学者值得一提的是只有类和类成员才有访问修饰符;
1,方法。方法又称函数 类中的方法和正常的方法差不多 只是前面有访问修饰符,用的时候用对象名点儿出来;
静态的方法不用实例化,非静态的方法必须实例化, 静态的方法在程序一旦启动不论是否new其所在类都会驻留内存,对系统的占用相对来说比非静态的方法占用大,但是由于其使用方便,调用快捷,还是很值得一用的,一般推荐频繁被调用的方法可以考虑使用静态的,可以提高项目性能。
  方法是通过指定 修饰符 返回值类型 方法名称 参数列表(参数)  方法签名+方法体
下面是根据参数类型将方法进行分类(共5种)
    形参 实参 类型相匹配obj类型
(1)值类型参数
(2)引用类型参数:比如数组,一个改变影响另一个
(3)out类型参数:出参  必须在引用的函数中赋值(优点 返回多个返回值)只从本函数传到Main  单向传递参数
                static void Main(string[] args)
//{ int i=0;//不必赋值
        //    Add(out  i);
        //    Console.WriteLine(i);
//static void Add(out int i)
        //{
        //    i = 100;//必须赋值;
        //}
        out相当于把 i 转换成引用类型
(4)ref类型参数:双向传递参数 带进 带出;
static void Main(string[] args)
        {
            int i = 10;
            Add(ref i);
            Console.WriteLine(i);
        }
    static void Add(ref int i)
    {
        Console .WriteLine (i);
    i=100;//不必赋值 因为可以接受main函数的i
    }
(5)params类型参数:只能用于一维数组
  static void Main(string[] args)
        {
            Add(1, 1, 2, 3, 5, 5325);
        }
    static void Add(params int[]arr)
    {
        foreach (int i in arr)
        Console.WriteLine(i);
    }

 static void Main(string[] args)
        {int [] arr=new int [3] {1,2,3};
            Add(arr);
            Add(12, 3);
        }
    static void Add(params int[]arr)
    {
        foreach (int i in arr)
        Console.WriteLine(i);
    }
下面是其他的方法
(1)分部方法  ,,必须出现在分部类中
分部类是partial关键定义的,分部类可以分布在几个文件夹中的,由多个程序员编写,但很少用!可以有ref 不可以有out 默认访问修饰符private
(2)扩展方法   已有的类型加了方法  尽量使用继承  不使用扩展 但string无子类 所以必须扩展   静态类!
C中 类的成员 - 风未定 - 风未定的博客
 
(3)命名参数  就是在调用的时候加“:“ 这样就可以不顾实参的顺序!
 
C中 类的成员 - 风未定 - 风未定的博客
 
C中 类的成员 - 风未定 - 风未定的博客
形实参数名必须相同!
(4)可选参数  待更新。。
2,访问修饰符
public internal private protect    protect internal
public 所有都可用
internal  项目中可用 exe dll 内
private  当前类中
 protect   父子类中 继承中
protect internal     protect  和 internal的并集
3,构造函数(析构函数)
构造函数名与类名相同,且没有返回值!
new 的时候就调用了构造函数  每个类中都有一个默认的函数
构造函数  可以有重载  有参(new的时候可以直接加实参)和无参  C中 类的成员 - 风未定 - 风未定的博客
 
构造函数还有 静态(只可调用一次且优先,可以对静态字段和只读字段赋初值)和非静态
C中 类的成员 - 风未定 - 风未定的博客
 4,字段。字段一般都是私有的private 可通过属性间接set 和get;
字段有constx型的  如果字段前面有const,调用时得用类点出来。且字段不能改变;
readonly的字段 调用用对象调用 且可在构造函数中改变;
静态的只读字段 可用静态构造函数赋初值!
5,属性。
 
C中 类的成员 - 风未定 - 风未定的博客

可只有get或set !  get set可以加修饰符!其中value是代替值!!!!
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值