산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# using 문 마스터하기: 네임스페이스 임포트, 별칭, 정적 지시자

C# using 문 완전 정복

C# using 키워드를 활용해 네임스페이스 임포트, 별칭 생성, 정적 멤버 직접 접근하는 방법을 실전 예제로 익혀보세요.

C#에서 using 지시자는 외부 리소스(네임스페이스, 클래스 등)를 현재 스코프로 가져옵니다. 이를 통해 코드 전반에서 정규화된 이름(Fully Qualified Name)을 매번 쓰지 않아도 됩니다.

// System 네임스페이스 임포트
using System;
namespace Program {
    class Program1 {
        static void Main(string[] args) {
            Console.WriteLine("Hello World!");
        }
    }
}

실행 결과

Hello World!

using System; 한 줄 덕분에 Console 클래스를 System. 접두사 없이 바로 사용할 수 있습니다.

// 정규화된 이름 사용
System.Console.WriteLine("Hello World!");
// using System 후
Console.WriteLine("Hello World!");

네임스페이스에 대한 더 자세한 내용은 C# 네임스페이스 공식 문서를 참조하세요.


using 별칭 만들기

긴 타입 이름에 짧은 별칭을 붙여 반복적인 참조를 간소화할 수 있습니다.

// System.Console을 Programiz로 별칭 지정
using Programiz = System.Console;
namespace HelloWorld {
    class Program {
        static void Main(string[] args) {
            // 전체 타입 이름 대신 별칭 사용
            Programiz.WriteLine("Hello World!");
        }
    }
}

실행 결과

Hello World!

별칭 Programiz는 System.Console과 동일하게 동작하지만 코드를 더 간결하게 만듭니다.


using static으로 정적 멤버 직접 접근

클래스의 정적 필드, 프로퍼티, 메서드를 using static으로 임포트하면 클래스 이름 없이 바로 호출할 수 있습니다.

예제: System.Math 정적 멤버 임포트

using System;
// Math 클래스의 정적 멤버 임포트
using static System.Math;
namespace Program {
    class Program1 {
        public static void Main(string[] args) {
            double n = Sqrt(9); // Math.Sqrt 대신 Sqrt 직접 사용
            Console.WriteLine("Square root of 9 is " + n);
        }
    }
}

실행 결과

Square root of 9 is 3

using static System.Math; 덕분에 Sqrt를 Math. 한정자 없이 호출했습니다.

비교: 정적 임포트 없이 사용

using System;
namespace Program {
    class Program1 {
        public static void Main(string[] args) {
            double n = Math.Sqrt(9); // 클래스 이름 필수
            Console.WriteLine("Square root of 9 is " + n);
        }
    }
}

실행 결과

Square root of 9 is 3

정적 지시자를 생략하면 전체 클래스 이름을 명시해야 합니다.

C 언어

  1. 필수 트러블슈팅 체크리스트: 시스템 장애 신속 진단 전략
  2. AT89S52 마이크로컨트롤러와 LM35 센서를 이용한 온도 기반 기기 제어 시스템
  3. Java 9 모듈 시스템: 향상 사항, 링크 타임, 커스텀 런타임 이미지
  4. C# 예외 처리 마스터하기: 전략과 모범 사례
  5. DSP 핸들 마스터 가이드: 좌표계 전환·USB 모드·펄스 설정·고급 가공·홈밍·스핀들 트러블슈팅
  6. 학생들, B&R 기술로 첨단 로봇 쓰레기 분류 시스템 구축
  7. PLC vs DCS: 적합한 자동화 시스템 선택하기
  8. Biz4Intellia IoT 물 누수 감지가 산업 효율성을 높이는 이유 – 5가지 핵심 이점
  9. 컨베이어 시스템 완벽 가이드: 작동 원리, 종류, 핵심 이점
  10. 자동차 서스펜션 시스템 마스터하기: 구조·기능·종류·작동 원리 완전 정복