Section 46.2: 기본이 아닌 (non-default) 생성자와 함께 객체 초기자 (Object initializer) 사용하기

객체 초기자 (Object initializer) 는 필요한 경우 생성자와 결합하여 해당 타입을 초기화 시키는 것이 가능하다. 아래와 같은 클래스가 정의되어 있는 경우를 확인하여 본다:

public class Book { public string Title { get; set; } public string Author { get; set; } public Book(int id) { // 생성자에서 필요한 작업을 수행한다 } // 클래스의 나머지 선언 부분 } var someBook = new Book(16) { Title = "Don Quixote", Author = "Miguel de Cervantes" }

의 코드는 먼저 Book(int) 생성자를 이용해 Book 객체를 생성할 것이며, 이후 객체 초기자를 이용해 각 속성값을 설정할 것이다. 이는 아래 코드와 동일한 효과를 갖는다.

var someBook = new Book(16); someBook.Title = "Don Quixote"; someBook.Author = "Miguel de Cervantes";
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

[출처] https://books.goalkicker.com/CSharpBook/

반응형

+ Recent posts