C#의 기본 액세스 수정자

Haider Ali 2023년10월12일
C#의 기본 액세스 수정자

이 가이드에서는 C#의 액세스 한정자에 대해 알아봅니다.

액세스 한정자와 기본 상태는 무엇입니까? 어떻게 사용하고 어떤 목적으로 사용합니까?

이 가이드에서는 액세스 수정자와 관련된 모든 세부 정보에 대해 설명합니다. 뛰어들어봅시다.

C#의 기본 액세스 수정자

접근 한정자의 개념을 이해하려면 먼저 접근 한정자가 무엇인지 이해해야 합니다. 우리는 당신이 이미 객체 지향 프로그래밍의 개념에 익숙하다고 가정합니다.

C#의 액세스 한정자는 클래스와 해당 메서드 및 필드 멤버의 액세스 가능성 범위를 설정하는 데 사용됩니다. C#에는 6가지 유형이 있습니다.

예를 들어 public 액세스 수정자를 클래스에 설정하면 public 클래스 액세스에 대한 제한 없이 프로그램의 모든 곳에서 모든 사람이 액세스할 수 있습니다.

C#의 모든 액세스 한정자를 살펴보겠습니다.

  1. public: 공개 회원에 대한 액세스에 대한 제한이 없습니다.
  2. private: 액세스는 클래스 정의로 제한됩니다. C#에 액세스 한정자를 넣지 않으면 이것이 기본 액세스 한정자입니다.
  3. protected: protected 클래스는 클래스 정의 내에서 그리고 상속된 클래스 내에서 액세스할 수 있습니다.
  4. internal: 액세스는 현재 프로젝트 어셈블리로만 제한됩니다.
  5. protected internal: 현재 어셈블리와 바깥쪽 클래스에서 상속된 형식만 액세스할 수 있습니다. 변수는 현재 프로젝트 및 파생 클래스의 모든 구성원이 액세스할 수 있습니다.
  6. private protected: 현재 어셈블리 내에서 액세스는 포함된 클래스 또는 포함된 클래스에서 상속된 유형으로 제한됩니다.

클래스와 해당 멤버 및 메서드에 액세스 한정자를 할당하지 않으면 기본적으로(이 가이드에서 설명) internal 액세스 한정자가 클래스에 할당됩니다. 그리고 private 액세스 수정자는 해당 메서드와 필드에 할당됩니다.

예를 들어 다음 코드를 살펴보십시오.

namespace MyCsharp {
  class csharprogram {
    void method1() {}
    class csharpin {}
  }
}

위 코드에서 클래스와 해당 필드 및 메서드에 액세스 수정자를 할당하지 않았습니다. 따라서 기본적으로 internal 액세스 수정자는 csharpprogram 클래스에 할당되고 private 액세스 수정자는 해당 필드와 메서드에 할당됩니다.

따라서 코드는 다음 코드와 동일하게 작동합니다.

namespace MyCsharp {
  internal class csharprogram {
    private void method1() {}
    private class csharpin {}
  }
}
작가: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn