반응형
닷넷 2.0 부터 추가된 기능이다.
이 기능을 사용하면 팀원 간 프로젝트를 진행하는 경우 클래스를 개별 파일로 분할하여 작업할 수 있기 때문에,
동시에 대규모 프로젝트 진행하는 경우 작업 수행이 용이하다.
예를 들어 아래와 같다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | A.cs public partial class PartialExample { public string A() { return "A"; } } B.cs public partial class PartialExample { public string B() { return "B"; } } C.cs public partial class PartialExample { public string C() { return "C"; } } Program.cs public class Program { public static void Main() { PartialExample tmp = new PartialExample(); Console.WriteLine(tmp.A()); Console.WriteLine(tmp.B()); Console.WriteLine(tmp.C()); } } |
partial 키워드는 클래스, 구조체 또는 인터페이스의 다른 부분을 네임스페이스 안에서 정의할 수 있음을 나타냅니다.
모든 부분에 partial 키워드를 사용해야 합니다.
최종 형식을 생성하려면 컴파일할 때 모든 부분을 사용할 수 있어야 합니다.
모든 부분은 public,private 등과 같이 액세스 가능성이 동일해야 합니다.
기본 클래스를 지정하는 모든 부분이 일치해야 하지만 기본 클래스를 생략하는 부분에서도 기본 형식을 상속합니다.
부분은 서로 다른 기본 인터페이스를 지정할 수 있으며 이 경우 최종 형식에는 모든 partial 선언에 나열된 모든 인터페이스가 구현됩니다.
partial 정의에 선언된 모든 클래스, 구조체 또는 인터페이스 멤버를 다른 모든 부분에 사용할 수 있습니다.
최종 형식은 컴파일 타임에 모든 부분의 조합이 됩니다.
반응형
'Language > C#' 카테고리의 다른 글
[오류] 'Microsoft.ACE.OLEDB.12.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다. (0) | 2013.11.21 |
---|---|
Excel 다루기 (Microsoft Excel 14.0 Object Library) - 1 (0) | 2013.11.20 |
하위 디렉토리 경로 내 파일 목록 얻어오기 (0) | 2013.11.14 |
하위 디렉토리의 원하는 파일 검색 (0) | 2013.11.08 |
폴더 선택 다이얼로그 띄우기! (0) | 2013.11.08 |