본문 바로가기
C#

[C#] 접근 한정자 internal의 사용법

728x90
반응형

C#에서는 기본적인 접근자 public, protected, private외에도 internal이 존재합니다.

 

internal은 private보다 더 제한적인 한정자입니다.

 

private는 같은 클래스내에서만 접근을 허용하지만 internal은 같은 어셈블리내에서만 접근이 가능합니다.

 

다르게 말하면 같은 소스파일내에서만 접근이 가능합니다.

 

// NormalClass.main.cs

public partial class NormalClass {
	private int member_p;
    internal int member_i;
    
}
// NormalClass.sub.cs

public class NormalClass {
	
    
    print(member_p); // 접근 가능
    
    print(member_i); // 접근 불가능
    
}

 

위에 예시와 같이 같은 클래스이지만 두개 이상의 파일로 나누어서 작업을 할 때 다른 파일을 수정중인 개발자가 자신이 사용중인 멤버를 접근하지 못하게 하고 싶을 경우에 internal로 선언하여 줄 수 있습니다.

 

반응형

'C#' 카테고리의 다른 글

[C#] ref와 out, in의 차이점  (0) 2023.05.16
[C#] Boxing과 Unboxing  (1) 2023.02.18
[C#] 애트리뷰트(Attribute)  (0) 2023.02.13
[C#] 리플렉션 (Reflection)  (0) 2023.02.13
[C#] 델리게이트(Delegate)와 이벤트(event)의 차이점  (0) 2023.02.12