C# 为什么有一个;使用名称空间";然后";使用namespace.class“;
很抱歉标题不好,很难用一句话来解释 如果“using”语句允许我们使用名称空间中的所有代码,那么为什么需要C# 为什么有一个;使用名称空间";然后";使用namespace.class“;,c#,namespaces,C#,Namespaces,很抱歉标题不好,很难用一句话来解释 如果“using”语句允许我们使用名称空间中的所有代码,那么为什么需要使用名称空间然后使用Namespace.Class添加一个更限定的路径来执行相同的语句 我的意思是:假设我们有: using System; namespace MyProgram { class Program { static void Main() { Console.WriteLine(&
使用名称空间
然后使用Namespace.Class添加一个更限定的路径来执行相同的语句
我的意思是:假设我们有:
using System;
namespace MyProgram
{
class Program
{
static void Main()
{
Console.WriteLine("Hi there");
Console.Readline();
}
}
}
显然,我们需要系统名称空间来使用Console类将内容打印到屏幕上。太好了
接下来,我们需要创建一个列表。为此,我们必须输入名称空间和类的路径,以访问允许我们创建列表的类:
using System;
using System.Collections.Generic;
namespace MyProgram
{
class Program
{
static void Main()
{
Console.WriteLine("Hi there");
var l = new List<int>(){1,2,3};
Console.Readline();
}
}
}
使用系统;
使用System.Collections.Generic;
名称空间MyProgram
{
班级计划
{
静态void Main()
{
Console.WriteLine(“你好”);
var l=新列表(){1,2,3};
Console.Readline();
}
}
}
为什么我们必须使用语句添加新的?如果
使用系统
允许我们访问系统命名空间中的所有代码,并且System.Collections.Generic位于所述系统命名空间中,那么不会使用系统代码>语句允许我们访问它,使用System.Collections.Generic创建代码>冗余?在这种情况下,控制台是在系统
命名空间内定义的静态类型。List
类在System.Collections.Generic
命名空间中定义。您只能使用直接在正在使用的名称空间中定义的类型,因此要使用控制台
,您需要系统
名称空间,但子名称空间中不包括其他类型。Re标题;这不是一个类,而是另一个名称空间。重新查询;使用不会分层导入。我认为职业训练局的问题“不可复制”,因为它基于一个错误的假设List
的全名是System.Collections.Generic.List
。您可以编写var l=new
System.Collections.Generic.List(){…},也可以使用System.Collections.Generic;`然后var l=newlist(){…}
。A使用
只在该名称空间中引入类型,而不在名称仅以
开头的任何名称空间中引入类型