C# 命名空间与程序结构

目录

前言

一、命名空间声明

二、命名空间的引用:using语句

三、C#的程序结构

1、程序结构

2、C#的Main()方法

总结


前言

现实世界中不同对象间的相互联系和相互作用构成了各种不同的系统, 不同系统 间的相互联系和相互作用构成了更庞大的系统,进而构成了整个世界。在面向对象概念中把这些系统称为命名空间。
命名空间提供了一种组织相关类和其它类型的方式。与文件或组件不同,命名空间是一种逻辑组合,而不是物理组合,应用命名空间可以防止 命名冲突

一、命名空间声明

命名空间声明用 namespace 关键字用于声明一个命名空间。此命名空间范围允许组织代码并提供了创建全局唯一类型的方法。

命名空间定义的一般格式如下:

namespace Sun //命名空间
{
    class Hello  //类
    {
        public Static void Say()
        {
            System.console.writeln("hello");
        }
    }
}

其中:
(1)命名空间的名称可以是 C#合法标识符。
(2)不要为命名空间和类取相同的名称。也不必强求使命名空间名称与程序集名相似
(3)缺少情况下,命名空间访问权限为公有,声明命名空间时不能使用任何修饰符。

二、命名空间的引用:using语句

using 语句方便了对在其它命名空间中定义的命名空间和类型的使用。using 指令仅影响命名空间或类型名称和简单名称的名称解析过程,与声明不同,using 指令不会将新成员添加到它们与所在的编译单元或命名空间相对应的声明空间中。语句主要有两种:
using 命名空间名称 ; // 用于导入一个命名空间的类型成员。
using 别名指令 = 命名空间或类型名称 ; // 用于为一个命名空间或类型启用一个别名。
案列:声明一个命名空间 sun,并定义一个类 hello。
namespace sun
{
    class hello
    {
        static public void say()
        {
            Console.Write("hello,word!");
            Console.Read();
        }
    }
}
声明一个命名空间 myNS,在该命名空间中没有引用 sun 命名空间,所以访问 sun 中的 hello 类,必须使用完全限定名sun.hello
namespace myNS
{
    class hello
    {
        public static void test()
        {
            sun.hello.say();
        }
    }
声明一个命名空间 youNS,由于引用类命名空间 Sun,所以访问 sun 中的 hello 类,就可以直接访问 hello
namespace youNS
{
    using sun;
    class youhello
    {
        public static void test()
        {
            hello.say();
        }
    }
}
采用了 别名s,所以访问sun中的hello类,就可以使用别名来访问s.hello
namespace otherNS
{
    using s = sun;
    class otherhello
    {
        public static void test()
        {
            s.hello.say();
        }
    }
}

三、C#的程序结构

1、程序结构

C# 程序可由一个或多个文件组成,每个文件都可以包含零个或零个以上的 命名空间
一个命名空间除了可包含其它命名空间外,还可包含 类、结构、接口、枚举、委托 等类型。
以下是 C#程序的主干,它包含所有这些元素:
using System; //using:引入命名空间
namespace YourNamespace //命名空间
{
    class YourClass { } //类
    struct YourStruct { } //结构
    interface IYourInterface { }//接口
    delegate int YourDelegate();//委托
    enum YourEnum { }//枚举
    namespace YourNestedNamespace//命名空间可包含其他命名空间
    {
        struct YourStruct { }
    }
    class YourMainClass //类
    {
        static void Main(string[] args) //程序执行入口
        {
            //Your program starts here... }
        }
    }

解释如下 :

using
引入命名空间,在本项目中导入别的命名空间,以便使用定义在那里的代码。 所谓命名空间就是一个程序局内相关类型的一个分组。即定义代码的范围空间、并起一个名字来指代该范围空间。它可以引入.NET 系统类库提供的命名空间,也可以是其它三方人员提供的命名空间。
namespace
定义、声明命名空间的关键字,后面所跟的标识符就是命名空间名, 如 Your 命名空间可以嵌套。
class
定义、声明类类型。后面所跟的标识符就是类名 。类可以嵌套定义。C#要求其程序中每个元素都要属于一个类,程序的功能要依靠类的成员来完成。 C#的程序由“{”和”}”构成,程序中每一对”{}”构成一个块。大括号成对出现,可以嵌套。
struct
定义、声明结构类型,后面所跟的标识符就是结构名。
interface
定义、声明接口,后面所跟的标识符就是接口名。
delegate
定义、声明委托,后面所跟的标识符就是委托名。
enum
定义、声明枚举,后面所跟的标识符就是枚举名。
static
表示静态的修饰符,可修饰类、方法等。方法是类同函数的一段命名程序代码。
void
表示方法的返回类型是空的,即没有返回值。
Main方法
C# 应用程序必须包含一个 Main 方法,用于控制程序的开始和结束。

2、C#的Main()方法


注意:Main首字母大写,必须是静态方法
           返回值可以为void或者int
           命令行参数是可选的
Main 方法是驻留在类或结构内的 static 方法。可以用下列方式之一声明 Main 方法:
//该方式返回 void。
static void Main()
    {
        //...
    }

//它还可以返回整数。
    static int Main()
    {
        //...
        return 0;
    }

//由于有任意一个返回类型,它可以带有参数。
    static void Main(string[] args)
    {
        //...
    }
    static int Main(string[] args)
    {
        //...
        return 0;
    }

总结

1. C#命名空间的声明和使用方法

2. C的程序结构

你可能感兴趣的:(C#笔记,c#,开发语言)