Dot Net是否下过雪:2.这是为什么呢?

做出来了第一个程序之后,你做何感想?不过知其然而不知其所以然是不好滴……估计大家都想知道这一大块代码是做什么用的吧

先按照术语讲解一遍吧

// 一个C# Hello World! 程序
using System;
namespace HelloWorld
{
    ///<summary>
    ///HelloWorld应用程序类
    ///</summary>
    public class Hello 
    {
        ///<summary>
        ///HelloWorld应用程序入口点
        ///</summary>
        public static void Main() 
        {
            Console.WriteLine("Hello World!");
            // 防止自动关闭窗口
            Console.ReadKey();
        }
    }
}

一行行看下去

// 一个C# Hello World! 程序

这是注释,就像写文章时很多人习惯在边上注解一下一样,代码也需要注释,在两条斜杠//后面同一行的文字、杠星和星杠/**/之间(可跨多行)的文字都会被忽略

using System;

这里引用了命名空间System

namespace HelloWorld{......}

这里定义了命名空间HelloWorld,大括号里的内容即为命名空间的成员

    ///<summary>
    ///HelloWorld应用程序类
   ///</summary>

这里三条斜杠///也是注释,但它并不会被忽略,而是被编译器或IDE(就是开发程序用的软件)打包成了一个说明书(参见C#文档注释规范

public class Hello {......}

这里定义了类Hello,大括号里的内容即为类的成员

        ///<summary>
        ///HelloWorld应用程序入口点
        ///</summary>
        public static void Main(){......} 

这里定义了一个静态入口点函数,上面的是他的文档注释

public表示公开该成员

static表示该成员为静态

void表示无返回值

括号内为空表示无参数

            Console.WriteLine("Hello World!");

真正干活的就这一句,他调用了Console类的静态函数WriteLine,并把"Hello World!"作为参数传递给他

            // 防止自动关闭窗口
            Console.ReadKey();

这里有一个注释已经说明了它的用途:防止自动关闭窗口。在所有语句执行完毕后,窗口会自动关闭。
而Console.ReadKey()会等到用户按下一个键后才会执行

它的执行顺序如下

加载类Hello

   ↓

执行Main函数

   ↓

执行Console.WriteLine函数,参数为字符串Hello World!

那么,这些类和函数、命名空间又是干什么的呢?

posted @ 2011-08-21 12:01  DrLibrazy  阅读(357)  评论(0)    收藏  举报