农民工兄弟学C# (3) 转

农民工兄弟学C# (3)

类是 C# 中功能最为强大的数据类型。像结构一样,类也定义了数据类型的数据和行为。然后,程序员可以创建作为此类的实例的对象。与结构不同,类支持继承,而继承是面向对象编程的基础部分。抄自中文MSDN太高深了,类就是一张工程图,上边画好造房子所需的砖头,水泥,砂子,和这些东西之间如何接合,当然光有图纸是不行的,你能住在图纸里,所以要我们这些农民工,用真的砖头,水泥,砂子按照图纸上画的造一个真的楼房,这个真的楼房就叫被实例化的对象,因为我们建的楼房都是新的,所以要用到牛(new).
类里的数据叫字段,类里的函数叫方法,这些都叫类成员
我们工地有不少工人,都是从全国各地来的农民工,父母没多少文化,所以给孩子也起不上什么高雅的名字,全是什么军什么兵呀,建什么志什么呀,在一个工地经常出现重名的情况,有得时候找个人一下来了三个,发工资也发错了,于是我们工地就形成了一个不成文的规则,凡是重名的人在叫他时都在他名字之前加上他来自那里,于是就有了,兰州李建军,河北张志国这类的叫法
命名空间和上边的这个例子就差不多,就是为了防止重名,给同名的类之前加一个限定。
定义命名空间,用namespace 关键字
看下边的例子你就明白了.

//很奇怪怎么没有了那一堆using, 以后我再给你说那堆using 的作用,反正现在是不需要的,
namespace Lanzhou
    //这里是定义命名空间,下边大括号里的内容全要加上一个Lanzhou的限定,在后边使用时前边要加上"Lanzhou."
{
    class Zhangzhiguo
        //这里是定义类,下边大括号里的内容全属于张志国这个类,它就是兰州张志国,类里不光有变量,还有函数的,这里只列一个成员变量,C#叫字段
    {
        public int Gongzi;//这是定义一个张志国的工资,其实他是兰州张志国的工资
    }
}

namespace Hebei
{
    class Zhangzhiguo
        //这里定义河北张志国
    {
        public int Gongzi;
    }
}

class Program
{

    static void Main(string[] args)
    {
        System.Console.WriteLine("大家好,俺是农民工.");
        Lanzhou.Zhangzhiguo Zhangzhiguo1 = new Lanzhou.Zhangzhiguo();   //这里使用了命名空间,中间用点连接
        //上一行是声明一个对象,就是说"一个叫张志国1的兰州张志国是一个兰州张志国",是不是很绕口,我想发明C#的人一定有点口吃,反正他是外国人,一定不懂中文.他不会来找我岔的
        Zhangzhiguo1.Gongzi=1000;
        //这是使用对象的成员
        System.Console.WriteLine("兰州张志国的工资:" + Zhangzhiguo1.Gongzi);
        Hebei.Zhangzhiguo Zhangzhiguo2 =new Hebei.Zhangzhiguo();
        Zhangzhiguo2.Gongzi=1200;
        System.Console.WriteLine("河北张志国的工资:" + Zhangzhiguo2.Gongzi);       
    }
}

按Ctrl+F5 运行一下吧屏幕显示如下

大家好,俺是农民工.
兰州张志国的工资:1000
河北张志国的工资:1200
请按任意键继续. . .

本文内容为虚构,如有雷同纯属巧合,全天下的"张志国"不要生气噢

本文首发于 http://yaotong.cnblogs.com
posted @ 2008-02-16 18:41  HappyQQ  阅读(251)  评论(0编辑  收藏  举报