다음을 통해 공유


컴파일러 오류 CS0060

일관성 없는 접근성: 기본 클래스 'Class1'은 'Class2' 클래스보다 접근성이 떨어집니다.

C#에서 파생 클래스는 기본 클래스보다 더 광범위한 접근성을 가질 수 없습니다. 기본 클래스에 액세스할 수 없는 경우 파생 클래스의 소비자는 의도치 않게 볼 수 없는 클래스에 액세스할 수 있습니다.

서브클래스는 기본 클래스보다 더 쉽게 액세스할 수 없습니다. 이를 통해 하위 클래스의 소비자는 의도한 것보다 기본 형식에 더 광범위하게 액세스할 수 있습니다.

다음 샘플은 Class1internal이고 Class2public이기 때문에 CS0060을 생성합니다.

internal class Class1
{
}

public class Class2 : Class1 // 🛑 CS0060: Class1 is less accessible
{
}

다음 두 가지 방법 중 하나로 CS0060을 해결할 수 있습니다.

  • Class1public로 변경하여 기본 클래스에 대한 접근성을 높입니다.
  • 파생 클래스의 접근성 제한: Class2을(를) internal로 변경하세요.

팁 (조언)

기본 클래스는 서브클래스보다 쉽게 액세스할 수 있지만 접근성은 떨어지지 않습니다.

참고하십시오