사용자 도구

사이트 도구


language:csharp:에러

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

language:csharp:에러 [2017/07/11 17:02] – 만듦 kieunslanguage:csharp:에러 [2024/04/23 22:44] (현재) – 바깥 편집 127.0.0.1
줄 1: 줄 1:
  
 +일관성 없는 액세스 가능성: 'xxx' 속성 형식이 'yyy' 속성보다 액세스 하기 어렵습니다.
 +
 +에러 코드의 예
 +
 +^ File A ^
 +| <code csharp>
 +namespace T1 {
 +  public class MainWindow {
 +    ASomeList mSomeList = new ASomeList(); // 에러(!)
 +    public ASomeList RealSomeList { get { return mSomeList; } }
 +  }
 +}
 +</code>|
 +^ File B ^
 +| <code csharp>
 +namespace T1 {
 +  class ASomeList {
 +    // ...
 +  }
 +}
 +</code>|
 +
 +이유 : ASomeList 클래스가 public 이 아니다. c#에서는 **클래스도 접근 권한이 있다는 걸** 종종 까먹는다.
 +
 +  * [[https://docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/keywords/class|c# class 키워드 명세]]
 +
 +네임스페이스 내에서 직접 선언되는 클래스는 public 또는 internal 일 수 있다. 기본은 internal 이다.