[C#] Partial 키워드

alsry._.112·2023년 10월 24일

c#

목록 보기
2/5

이번에 알아볼 것은 Partial 키워드 이다.

Partial...?

Partial을 번역하면 부분적이라는 뜻이 나온다.
그렇가면 C#에서의 Partial은 어떤 역할일까?

MSDN에는 이렇게 나와 있다.

말이 다소 어려울 수 있지만, 한마디로
하나의 클래스의 정의를 여러 곳에서 할 수 있다는 뜻이다.
아래는 사용 예시이다.

사용 예시

internal class Program
{
    static void Main(string[] args)
    {
        Monseter monseter = new Monseter();
        monseter.PrintArray();
        monseter.PrintArray2();
    }
}

partial class Monseter //partial
{
    string str = "나는 괴물이다."; //공유할 변수
    public void PrintArray()
    {
        Console.WriteLine($"PrintArray1: {str}");
    }
}

partial class Monseter //partial
{
    public void PrintArray2()
    {
        Console.WriteLine($"PrintArray2: {str}");
    }
}

다음 코드는 partial 키워드를 사용하여 똑같은 class Monster를 두개 사용하였다.
일반적인 class였으면 오류가 떴겠지만 partial 키워드를 사용하여 가능하게 하였다.
이 프로그램을 실행 해보면

PrintArray2에서
partial class Monseter에서 선언한 변수도 사용가능
한 것을 확인 할 수 있다.

partial은 private와 같은 접근 수준을 가진다.

partial은 class뿐만 아니라 struct나 interface에서도 사용 할 수 있다.

팀프로젝트를 하다보면 하나의 클래스를 한명이 작업하고 있으면 기다리고만 있어야 했었어서 불편했는데 partial을 사용하면 그럴 일이 사라질 것 같다!

profile
소통해요

1개의 댓글

comment-user-thumbnail
2023년 10월 24일

우와, 처음 보는 문법이네요. 정말 감사합니다.

답글 달기