주의하기 어려운.net에서 using의 몇 가지 용도

2951 단어 .net
오늘 한 친구가 나에게 using이 몇 가지 용도가 있느냐고 물었다. 나의 첫 번째 반응은 희향두의 네 가지 작법이었다. 두 번째 반응은 틀림없이 또 면접 문제일 것이다.
using은 다음과 같이 사용할 수 있습니다.
1. 네임스페이스를 참조하여 중복 코드인 Using System을 줄입니다.Web.UI.WebControls;
2、즉시 자원 방출 Using(TestObject a = new TestObject(){//사용 대상}//대상 자원 방출
3개가 있다면서요?바로 sdk를 찾아봤어요.
***********************************************
sdk에서 이렇게 말한다. using 지령은 두 가지 용도가 있다. ◆명명 공간을 만드는 별명(using 별명) ◆명명 공간에서 유형을 사용할 수 있다. 예를 들어 이 명명 공간의 유형을 한정할 필요가 없다(using 지령).using [alias = ]class_or_namespace;
여기서:alias (선택 가능) 는 명명 공간을 나타내는 사용자 정의 기호를 원합니다.다음에, 이름의 공간 이름을 알리는 데 사용할 수 있습니다.class_or_namespace는 별명의 이름 공간 이름을 사용하거나 제공하거나 별명의 클래스 이름을 제공하기를 원합니다.
비고는 식별자를 명칭 공간이나 클래스로 한정하기 쉽도록 using 별명을 만듭니다.이름 공간에서 형식을 사용할 수 있도록 using 명령을 만듭니다. 이름 공간을 지정하지 않아도 됩니다.using 명령은 지정한 이름 공간에 끼워 넣을 수 있는 이름 공간에 접근하지 않습니다.
네임스페이스
네임스페이스는 사용자 정의 네임스페이스와 시스템 정의 네임스페이스 두 종류로 나뉜다.사용자정의 네임스페이스는 코드에 정의된 네임스페이스입니다.시스템에서 정의한 네임스페이스 목록은 을 참조하십시오.NET Framework 설명서입니다.다른 프로그램 세트의 참조 방법에 대한 예는 C# DLL 생성 및 사용을 참조하십시오.
다음 예제에서는 네임스페이스의 using 앨리어스를 정의하고 사용하는 방법을 보여 줍니다.

// cs_using_directive.cs

using MyAlias = MyCompany.Proj.Nested; // define an alias to represent a namespace

namespace MyCompany.Proj

{

public class MyClass

{

public static void DoNothing()

{

}

}

namespace Nested // a nested namespace

{

public class ClassInNestedNameSpace

{

public static void SayHello()

{

System.Console.WriteLine("Hello");

}

}

}

}

public class UnNestedClass

{

public static void Main()

{

MyAlias.ClassInNestedNameSpace.SayHello(); // using alias

}

}


출력 Hello
다음 예제에서는 클래스에 대한 using 명령 및 using 별칭을 정의하는 방법을 보여 줍니다.

// cs_using_directive2.cs

using System; // using directive

using AliasToMyClass = NameSpace1.MyClass; // using alias for a class

namespace NameSpace1

{

public class MyClass

{

public override string ToString()

{

return "You are in NameSpace1.MyClass";

}

}

}

namespace NameSpace2

{

class MyClass

{

}

}

namespace NameSpace3

{

using NameSpace1; // using directive

using NameSpace2; // using directive

class Test

{

public static void Main()

{

AliasToMyClass somevar = new AliasToMyClass();

Console.WriteLine(somevar);

}

}

}


You are in NameSpace 1.MyClass
*********************************************
그래서 하나 더:
3. 네임스페이스의 별칭(using 별칭) using MyAlias = MyCompany를 만듭니다.Proj.Nested;

좋은 웹페이지 즐겨찾기