看如下的地方,它把所有的基本慨念都讲啦,入门最好:
http://www.pconline.com.cn/pcedu/empolder/gj/vc/10111/14570.html

解决方案 »

  1.   

    比如 http://www.pconline.com.cn/pcedu/empolder/gj/vc/10111/14574.html地址的内容就是
    初探c#(十三)属性(Properties) 
      

  2.   

    方法是一个执行可以由对像或类完成的计算或行为的成员。方法有一个形式参数列表(可能为空),一个返回数值(或void),并且可以是静态也可以是非静态。静态方法要通过类来访问。非静态方法,也称为实例方法,通过类的实例来访问。事件是使得对像和类提供通知的成员。一个类通过提供事件声明来定义一个事件,这看起来与域和事件声明相当类似,但是有一个event关键字。这个声明的类型必须是delegate类型。 
    在这个例子中
    public delegate void EventHandler(object sender, Event e);
    public class Button 
    {
    public event EventHandler Click;
    public void Reset() {
    Click = null;
    }
    }
      

  3.   

    1.12 名字空间(Namespaces) 我们在前面已对namespace花了不少笔墨(俺都忘了该如何接上了!O.K.请大家看完再倒)。我们曾经说“i not 
    like the hello world”。但是在程序中要经常说就会很累,如果要在别的代码中用就更繁了,这时可以用 
    namespace搭救。我把第一个例子切开,代码如下:*/ namespace MyOpinion 

    public class Message 

    public string GetMessage() { 
    return "i dont like Hello world"; 


    } /* 
    如果我想用namespace建立一个自己的库,就要对我的自定义函数和类进行分类,并填入相应的namespace中。 
    如:*/namespace Mylib.Csharp.MyOpinion 

    public class Message 

    public string GetMessage() { 
    return "i dont like Hello world"; 


    } /* 
    namespace是分等级的,“Mylib.Csharp.MyOpinion”其实是缩写,每个“.”后面的namespace都被它前面的包 
    含。如果拆开:*/ namespace Mylib 

    namespace Csharp 

    namespace MyOpinion 
    {....} 

    } /* 
    然后,我们就可以用自己的库了:*/ using Mylib.Csharp.MyOpinion; 
    class test 

    static void Main() { 
    Message m = new Message(); 
    System.Console.WriteLine(m.GetMessage()); 

    } /* 
    不过无论我们命名如何小心都会出现重名,即命名冲突。这时可以用别名来解决,比如上面的代码可以这样:*/ using MessageSource = Mylib.Csharp.MyOpinion; 
    class test 

    static void Main() { 
    MessageSource m = new MessageSource(); 
    System.Console.WriteLine(m.GetMessage());