반응형
c # : 게터 / 세터
어딘가에서 다음과 같은 것을 보았고 그것이 무엇을 의미하는지 궁금했습니다. 나는 그들이 게터와 세터라는 것을 알고 있지만 문자열 Type이 이와 같이 정의 된 이유를 알고 싶습니다. 도와 주셔서 감사합니다.
public string Type { get; set; }
사람들은되는 속성 자동 구현 (줄여서 자동 등록).
컴파일러는 다음과 같은 간단한 구현에 해당하는 것을 자동 생성합니다.
private string _type;
public string Type
{
get { return _type; }
set { _type = value; }
}
이것은 자동 속성 이며 이에 대한 축약 표기법입니다.
private string type;
public string Type
{
get { return this.type; }
set { this.type = value; }
}
C # 6 :
이제 자동 속성을 필드로 선언 할 수 있습니다.
public string FirstName { get; set; } = "Ropert";
읽기 전용 자동 속성
public string FirstName { get;} = "Ropert";
public string Type { get; set; }
하는 것과 다르지 않다
private string _Type;
public string Type
{
get { return _Type; }
set { _Type = value; }
}
이는 컴파일러가 런타임에 지원 필드를 정의 함을 의미합니다. 자동 구현 속성에 대한 구문입니다.
추가 정보 : 자동 구현 속성
자동으로 지원되는 속성이며 기본적으로 다음과 같습니다.
private string type;
public string Type
{
get{ return type; }
set{ type = value; }
}
이를 자동 속성이라고합니다.
http://msdn.microsoft.com/en-us/library/bb384054.aspx
기능적으로 (그리고 컴파일 된 IL 측면에서) 지원 필드가있는 속성과 동일합니다.
나는 이것이 오래된 질문이라는 것을 알고 있지만 C # 6이 출시되면서 이제 개인 속성에 대해 이와 같은 작업을 수행 할 수 있습니다.
public constructor()
{
myProp = "some value";
}
public string myProp { get; }
참고 URL : https://stackoverflow.com/questions/6709072/c-getter-setter
반응형
'IT story' 카테고리의 다른 글
Angular 2 '구성 요소'는 알려진 요소가 아닙니다. (0) | 2020.09.06 |
---|---|
$ LOAD_PATH (Ruby)에 디렉토리 추가 (0) | 2020.09.06 |
GUI를 통해 TFS에서 다른 사용자의 체크 아웃을 실행 취소하는 방법은 무엇입니까? (0) | 2020.09.06 |
jQuery는 POST 매개 변수로 문자열을 보냅니다. (0) | 2020.09.06 |
C로 현재 시간 가져 오기 (0) | 2020.09.06 |