[C#] readonly 키워드를 알아보자
오늘은 C#프로그래밍언어에 있는 readonly 키워드에 대해서 알아보도록 하겠습니다. readonly이라고 하면 보통 읽기전용이라고 많이들 알고 계실 겁니다. 그와 마찬가지로 C#에서의 readonly 키워드도 동일한 역할을 한다고 보시면되겠습니다.
readonly keyword
사실 다른 프로그래밍언어에도 있는 개념이 읽기전용으로 된 변수인데요? 그런데 이미 다 알고있는 사실이기 때문에 따로 형식을 지정해 주지 않아서 키워드가 따로없습니다. 예를 들어서 상수가 읽기전용 변수가 되겠죠? 그런데 씨샵에서는 특이하게도 리드온니 키워드가 존재합니다.
readonly 변수 만드는 방법
읽기전용변수를 만드는 방법은 간단합니다. 클래스변수 또는 변수앞에다가 readonly 라는 키워드를 붙여주시면 만들 수 있습니다.
그렇다면 읽기전용변수는 초기화를 언제해주지? 값을 언제지정해주지 라는 생각이 자연스레 떠오를 텐데요? 바로 생성과 동시에 초기화 해주는 방법과, 생성자 정의 안에서 값을 지정해 줄 수 있습니다.
읽기 전용 필드에는 할당할 수 없습니다. 단 생성자 또는 변수 이니셜라이저에서는 예외입니다.
그러나 만약에 그 외에 값을 수정해 주려는 시도가 있을 경우 위와 같은 오류가 발생하게 됩니다. 말 그대로 읽기전용 변수이기 때문에 수정이 불가능 한 것이죠.
상수를 지정하는 const 키워드가 있는데 굳이 readonly 키워드를 사용할 때가 있을지는 모르겠으나 알고 있으면 그래도 언젠간 쓸 날이 있겠지 라는 생각과 함께 학습해 보았습니다.
C# everywhere
'C#(.NET)' 카테고리의 다른 글
[c#] foreach 반목문 갖다뽀개버리기 (8) | 2017.10.20 |
---|---|
[오류해결] 코드 경로 중 일부만 값을 반환합니다. (1) | 2017.10.19 |
[C#] 속성 겟터와 셋터(get, set)키워드 알아보자 (6) | 2017.10.16 |
[C#] 인스턴스변수와 클래스변수 (6) | 2017.10.13 |
C# - var 키워드는 무엇인가 (초기화, 사용법) (13) | 2017.10.06 |