[c#] 쓰기 전용 데이터 타입

String 클래스

String 클래스는 불변(immutable)하므로 한 번 생성된 문자열은 수정할 수 없습니다. 새로운 문자열을 만들어내거나 기존 문자열을 조작하는 메서드는 항상 새로운 문자열을 반환합니다.

string str = "Hello";
str = str.ToUpper(); // 이전 문자열을 수정하는 것이 아니라 새로운 문자열을 생성하여 반환

Readonly 키워드

readonly 키워드는 필드에 사용되며, 해당 필드는 선언될 때 또는 생성자에서만 할당될 수 있습니다. 이를 통해 값이 한 번 할당되면 이후에는 수정되지 않음을 보장합니다.

public class MyClass
{
    public readonly int _myField;
    
    public MyClass(int value)
    {
        _myField = value; // 생성자에서만 할당 가능
    }
}

Const 키워드

상수(constant)는 수정할 수 없는 값으로, const 키워드를 사용하여 선언됩니다. 상수는 선언과 동시에 초기화되며, 이후에는 값을 변경할 수 없습니다.

public const int MaxValue = 100;

셋 다 읽기 전용 데이터를 다루는데 사용되지만, 상황에 맞게 적절한 데이터 타입을 선택하여 코드의 안정성을 유지하는 것이 중요합니다.

본 내용은 Microsoft C# 공식 문서를 참고하여 작성되었습니다.