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是代替值!!!!
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013077144/article/details/51211766
上一篇类 对象
下一篇索引器
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭