小小的体会

2007年11月26日 星期一 下午 04:24

今天看了半天部长的文章,收获不小哇!

1、const常量最好能用struct封装;

2、protected 保护的方法不再受到保护;

3、类属性索引器get和set的访问性限制;

4、public protected internal private 四种访问级详解,这个是最经典的,

public 不用说了,都可以访问,private也不用说了,只有自身可访问,

internal 是表示同一程序集可以访问,而protected 只有自身和子类可以访问,但是它们到底是那个的可访问级高呢?这是不能横量的,internal是表示横向,而protected 表示纵向,有一个例子:

在古代都有宗族,一个族的族长权利是最高的,它可以管本族所有的人,不管是全国全世界那里的人,只要是这个族的,他都可以管,这就好比是protected 一样;而每一个县都有县令,只要是本县的,他都可以管,不管你是属于那一个族的,这就好比是internal。呵呵,,这个例子看了后,我一下就记住了,太经典了。

5、复习委托、事件、匿名方法

委托和事件:

public delegate void IsEnd(int end);

    public class Test
    {
        public event IsEnd OnOver;

        public void T()
        {
            MyClass my = new MyClass();
            my.Name = "";

            string a = my.Name;
        }

        public void Begion()
        {
            for (int i = 1; i <= 100; i++)
            {
                if (i == 100)
                {
                    IsEndFun(i);
                }
            }
        }

        private void IsEndFun(int num)
        {
            if (OnOver != null)
            {
                OnOver(num);
            }
        }
    }

调用:

Test t = new Test();
            t.OnOver += new IsEnd(t_OnOver);
            t.Begion();

static void t_OnOver(int end)
        {
            Console.WriteLine(end.ToString());
        }

匿名方法:

delegate string Hello();

public static string SayHello()
        {
            return "Hello!!";
        }

Hello h = new Hello(SayHello);
            Console.WriteLine(h());

            Hello h2 = new Hello(delegate()
            {
                return "Hi!!";
            });

Hello h=delegate(){return "123";};
h();
这样才是最好的用法

posted @ 2008-02-01 10:55  point.deng  阅读(182)  评论(0编辑  收藏  举报