方法

方法中的参数,值参数、引用参数(ref)、输出参数(out)、数组参数(params)
1、值参数,调用时会做一份拷贝,并且将此拷贝值做一份,次种方式可以保证实际参数是安全的;
2、引用参数,不开辟新的类存区域,当用引用参数传递参数时候把参数的实际类存传给函数;
3、输出参数,与引用参数相同,不同的是输出参数在传送的时候不用初始化;
4、数组型参数,如果形参中包含了数组形参数,那么它必须位于参数表中的最后,数组值允许以为数组;
静态成员和方法,static 修饰,方法公有;
方法的重载,参数和返回值得不同;
操作符重载
EG一元操作符:
using System;
class Player
{
    public int neili;
    public int tili;
    public int jingyan;
    public int neili_r;
    public int tili_r;
    public Player()
    {
        neili=10;
        tili=50;
        jingyuan=0;
        neili_r=50;
        tili_r=50;   
    }
    public static Player operator ++(Player p)
    {
        p.neili=p.neili+50;
        p.tili+=100;
        p.neili_r=p.neili;
        p.tili_r=p.tili;
        return p;
    }
    public void Show()
    {
        WriteLine......   
    }
}
calss Test
{
    public     static void Main()
    {
        Player man=new Player();
        man.Show();
        man++;
        main.show();
    }
}
EG二元操作符重载
using System;
class DKR
{
    public int x,y,z;
    public DKR(int vx,int vy,int vz)
    {
        x=vx;
        y=vy;
        z=vz;
    }
    public static DKR operation +(DKR d1 ,DKR d2)
    {
        DKR dkr=new DKR(0,0,0);
        dkr.x=d1.x+d2.x;
        dkr.y=d1.y+d2.y;
        dkr.z=d1.z+d2.z;
        return dkr;
    }
}
class Text
{
    public static void Main(){
        DKR d1 =new DKR(3,2,1);
        DKR d2 =new DKR(0,6,5);
        DKR d3 =d1+d2;
        Console.WriteLine(...);
    }
}

posted on 2013-07-05 11:02  家乡的萝卜  阅读(238)  评论(0编辑  收藏  举报