일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 그루지야
- andrew ng
- 장관을 이루는 일몰과 일출
- Fear
- c#
- 이탈리아
- Coursera
- 오늘일기
- Enough
- 제프리 리처
- Death
- 4장
- 물이 만들어내는 전 세계의 아름다운 장관
- 아름다운 풍경
- 전 세계의 잊지 못할 명소들
- 남아프리카
- 6장
- Never
- 3장
- 동물에 관한 매혹적인 사실
- 8장
- 5장
- ML
- CLR via C#
- 아름다운 자연폭포
- 사진: 세계의 웅대한 산
- Wiki
- 장관을 이루는 세계 곳곳의 등대 사진
- 위젯
- 무료
- Today
- Total
목록8장 (3)
오진이 블로그

목차 2부. 타입 설계 8장. 메서드 타입 생성자 2부. 타입 설계 8장. 메서드 타입 생성자 CLR은 타입 생성자(혹은 정적 생성자, 클래스 생성자, 타입 초기자 등으로로 불린다)를 지원한다. 인스턴스 생성자는 인스턴스의 초기 상태를 설정하기 위해서 사용되고, 타입 생성자는 타입의 초기 상태를 설정하기 위해서 사용하게 된다. 타입은 내부적으로 사용하는 기본 타입 생성자가 따로 없다. 만약 타입 생성자를 정의해야 하는 경우라면 타입당 하나만 정의할 수 있으며 매개변수를 가질 수 없다. static 키워드를 사용해서 정의해야 한다. 타입 생성자는 반드시 private이어야 하는데, C#이 자동으로 private을 붙여준다. 타입 생성자는 반드시 private으로 선언되어 다른 개발자들이 작성된 코드에 의하..

목차 2부. 타입 설계 8장. 메서드 인스턴스 생성자와 구조체 (값 타입) 2부. 타입 설계 8장. 메서드 인스턴스 생성자와 구조체 (값 타입) CLR에서는 값 타입의 인스턴스를 언제든 생성할 수 있도록 허용하고 있으므로, 이를 막을 방법이 없다. 이런 이유로 값 타입은 내부에 생성자를 정의할 필요가 없으며, C# 컴파일러에는 값 타입에 대해서는 매개변수가 없는 기본 생성자 코드를 생성하지 않는다. CLR은 값 타입에 대해서도 생성자를 정의할 수 있도록 허용하고 있다.

목차 2부. 타입 설계 8장. 메서드 인스턴스 생성자와 클래스 (참조 타입) 2부. 타입 설계 8장. 메서드 인스턴스 생성자와 클래스 (참조 타입) 생성자는 특별한 유형의 메서드로 타입의 인스턴스를 올바란 상태로 초기화하는 것을 돕는다. 생성자 메서드는 항상 .ctor이라는 이름으로 불리며, 이 이름으로 메서드 정의 메타데이터 테이블에 등록된다. 생성자에서 명시적으로 값을 설정하지 않은 필드들은 항상 0이나 null 값을 가지게 된다. 인스턴스 생성자는 상속되지 않는다. 클래스를 abstract로 선언하면, 컴파일러는 기본 생성자를 protected로 선언하며, 그렇지 않은 경우에는 public으로 선언된 것으로 간주한다. 클래스를 static으로 선언하면(sealed와 abstract의 조합으로 생각할..