Imports 문(.NET 네임스페이스 및 형식)Imports Statement (.NET Namespace and Type)

네임 스페이스 한정자 없이 형식 이름을 참조할 수 있습니다.Enables type names to be referenced without namespace qualification.

구문Syntax

Imports [ aliasname = ] namespace
' -or-
Imports [ aliasname = ] namespace.element

요소Parts

용어Term 정의Definition
aliasname (선택 사항)Optional. 코드에서 전체 한정 문자열 대신 namespace 참조할 수 있는 가져오기 별칭 또는 이름입니다.An import alias or name by which code can refer to namespace instead of the full qualification string. Declared Element Names을 참조하세요.See Declared Element Names.
namespace 필수 요소.Required. 가져오는 네임 스페이스의 정규화 된 이름입니다.The fully qualified name of the namespace being imported. 는 임의의 수준에 중첩 된 네임 스페이스의 문자열일 수 있습니다.Can be a string of namespaces nested to any level.
element (선택 사항)Optional. 네임 스페이스에 선언 된 프로그래밍 요소의 이름입니다.The name of a programming element declared in the namespace. 모든 컨테이너 요소일 수 있습니다.Can be any container element.

주의Remarks

Imports 문을 사용 하면 지정 된 네임 스페이스에 포함 된 형식을 직접 참조할 수 있습니다.The Imports statement enables types that are contained in a given namespace to be referenced directly.

단일 네임 스페이스 이름 또는 중첩 된 네임 스페이스의 문자열을 제공할 수 있습니다.You can supply a single namespace name or a string of nested namespaces. 각 중첩 된 네임 스페이스는 다음 예제와 같이 마침표 (.)를 기준으로 다음 상위 수준 네임 스페이스와 구분 됩니다.Each nested namespace is separated from the next higher level namespace by a period (.), as the following example illustrates:

Imports System.Collections.Generic

각 소스 파일에는 개수에 관계 없이 Imports 문이 모두 포함 될 수 있습니다.Each source file can contain any number of Imports statements. 이는 Option Strict 문과 같은 모든 옵션 선언을 따라야 하며 Module 또는 Class 문과 같은 프로그래밍 요소 선언 앞에와 야 합니다.These must follow any option declarations, such as the Option Strict statement, and they must precede any programming element declarations, such as Module or Class statements.

Imports는 파일 수준 에서만 사용할 수 있습니다.You can use Imports only at file level. 즉, 가져오기에 대 한 선언 컨텍스트는 소스 파일 이어야 하며 네임 스페이스, 클래스, 구조체, 모듈, 인터페이스, 프로시저 또는 블록이 될 수 없습니다.This means the declaration context for importation must be a source file, and cannot be a namespace, class, structure, module, interface, procedure, or block.

Imports 문은 다른 프로젝트 및 어셈블리의 요소를 프로젝트에서 사용할 수 있도록 설정 하지 않습니다.Note that the Imports statement does not make elements from other projects and assemblies available to your project. 가져오기는 참조 설정 대신 사용 됩니다.Importing does not take the place of setting a reference. 프로젝트에 이미 사용할 수 있는 이름을 한정할 필요성이 제거 됩니다.It only removes the need to qualify names that are already available to your project. 자세한 내용은 선언 된 요소에대 한 참조에서 "포함 하는 요소 가져오기"를 참조 하세요.For more information, see "Importing Containing Elements" in References to Declared Elements.

참고

참조 페이지, 프로젝트 디자이너 (Visual Basic)를사용 하 여 암시적 Imports 문을 정의할 수 있습니다.You can define implicit Imports statements by using the References Page, Project Designer (Visual Basic). 자세한 내용은 방법: 가져온 네임 스페이스 추가 또는 제거 (Visual Basic)를 참조 하세요.For more information, see How to: Add or Remove Imported Namespaces (Visual Basic).

Import 별칭Import Aliases

가져오기 별칭 은 네임 스페이스 또는 형식에 대 한 별칭을 정의 합니다.An import alias defines the alias for a namespace or type. 가져오기 별칭은 하나 이상의 네임 스페이스에 선언 된 것과 동일한 이름의 항목을 사용 해야 하는 경우에 유용 합니다.Import aliases are useful when you need to use items with the same name that are declared in one or more namespaces. 자세한 내용 및 예제는 선언 된 요소에대 한 참조의 "요소 이름 한정"을 참조 하세요.For more information and an example, see "Qualifying an Element Name" in References to Declared Elements.

aliasname와 같은 이름을 사용 하 여 모듈 수준에서 멤버를 선언 하면 안 됩니다.You should not declare a member at module level with the same name as aliasname. 이 경우 Visual Basic 컴파일러는 선언 된 멤버에 대해서만 aliasname를 사용 하 고이를 가져오기 별칭으로 더 이상 인식 하지 않습니다.If you do, the Visual Basic compiler uses aliasname only for the declared member and no longer recognizes it as an import alias.

가져오기 별칭을 선언 하는 데 사용 되는 구문은 XML 네임 스페이스 접두사를 가져오는 데 사용 되는 구문과 유사 하지만 결과는 다릅니다.Although the syntax used for declaring an import alias is like that used for importing an XML namespace prefix, the results are different. Xml 네임 스페이스 접두사는 xml 리터럴 또는 XML 축 속성 에서만 정규화 된 요소 또는 특성 이름에 대 한 접두사로 사용할 수 있는 반면, 코드에서는 가져오기 별칭을 식으로 사용할 수 있습니다.An import alias can be used as an expression in your code, whereas an XML namespace prefix can be used only in XML literals or XML axis properties as the prefix for a qualified element or attribute name.

요소 이름Element Names

element제공 하는 경우 다른 요소를 포함할 수 있는 프로그래밍 요소인 컨테이너 요소를 나타내야 합니다.If you supply element, it must represent a container element, that is, a programming element that can contain other elements. 컨테이너 요소에는 클래스, 구조체, 모듈, 인터페이스 및 열거형이 포함 됩니다.Container elements include classes, structures, modules, interfaces, and enumerations.

Imports 문에서 사용할 수 있는 요소의 범위는 element지정 여부에 따라 달라 집니다.The scope of the elements made available by an Imports statement depends on whether you specify element. namespace만 지정 하는 경우 해당 네임 스페이스의 고유 하 게 명명 된 멤버와 해당 네임 스페이스 내에 있는 컨테이너 요소의 멤버를 한정자 없이 사용할 수 있습니다.If you specify only namespace, all uniquely named members of that namespace, and members of container elements within that namespace, are available without qualification. namespaceelement를 둘 다 지정 하는 경우에는 해당 요소의 멤버만 한정 되지 않고 사용할 수 있습니다.If you specify both namespace and element, only the members of that element are available without qualification.

예제Example

다음 예제에서는 DirectoryInfo 클래스를 사용 하 여 C:\ 디렉터리의 모든 폴더를 반환 합니다.The following example returns all the folders in the C:\ directory by using the DirectoryInfo class:

코드에는 파일 맨 위에 Imports 문이 없습니다.The code has no Imports statements at the top of the file. 따라서 DirectoryInfo, StringBuilderCrLf 참조는 모두 네임 스페이스를 사용 하 여 정규화 됩니다.Therefore, the DirectoryInfo, StringBuilder, and CrLf references are all fully qualified with the namespaces.

Public Function GetFolders() As String
    ' Create a new StringBuilder, which is used
    ' to efficiently build strings.
    Dim sb As New System.Text.StringBuilder

    Dim dInfo As New System.IO.DirectoryInfo("c:\")

    ' Obtain an array of directories, and iterate through
    ' the array.
    For Each dir As System.IO.DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(Microsoft.VisualBasic.ControlChars.CrLf)
    Next

    Return sb.ToString
End Function

예제Example

다음 예제에는 참조 된 네임 스페이스에 대 한 Imports 문이 포함 되어 있습니다.The following example includes Imports statements for the referenced namespaces. 따라서 네임 스페이스를 사용 하 여 형식을 정규화 할 필요가 없습니다.Therefore, the types do not have to be fully qualified with the namespaces.

' Place Imports statements at the top of your program.
Imports System.Text
Imports System.IO
Imports Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
    Dim sb As New StringBuilder

    Dim dInfo As New DirectoryInfo("c:\")
    For Each dir As DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(CrLf)
    Next

    Return sb.ToString
End Function

예제Example

다음 예제에는 참조 된 네임 스페이스에 대 한 별칭을 만드는 Imports 문이 포함 되어 있습니다.The following example includes Imports statements that create aliases for the referenced namespaces. 형식은 별칭으로 한정 됩니다.The types are qualified with the aliases.

Imports systxt = System.Text
Imports sysio = System.IO
Imports ch = Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
    Dim sb As New systxt.StringBuilder

    Dim dInfo As New sysio.DirectoryInfo("c:\")
    For Each dir As sysio.DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(ch.CrLf)
    Next

    Return sb.ToString
End Function

예제Example

다음 예에는 참조 된 형식에 대 한 별칭을 만드는 Imports 문이 포함 되어 있습니다.The following example includes Imports statements that create aliases for the referenced types. 별칭은 형식을 지정 하는 데 사용 됩니다.Aliases are used to specify the types.

Imports strbld = System.Text.StringBuilder
Imports dirinf = System.IO.DirectoryInfo
Public Function GetFolders() As String
    Dim sb As New strbld

    Dim dInfo As New dirinf("c:\")
    For Each dir As dirinf In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(ControlChars.CrLf)
    Next

    Return sb.ToString
End Function

참조See also