string 즉, 문자열은 C#에서 변경되지 않습니다.
그리고 참조 형식입니다.
하지만, 동작은 값 형식과 똑같습니다.
왜냐하면, 독립성을 보장하기 때문입니다.
많은 객체들이 한 참조를 가진다고 해도,
변경이 가능하지 않다면 독립적인 객체입니다.
문자열이 절대로 바뀌지 않는다면,
일부를 공유하는 독립적인 객체가 됩니다.
따라서, 외부에서 공유를 하더라도 바뀌지 않습니다.
정리하자면,
string은 참조형식이기는 하나, 값 형식과 똑같이 동작합니다.
문자열을 값처럼 넘겨라? 틀린말이 아닙니다.
'삽질의 현장 > - .NET' 카테고리의 다른 글
#039_닷넷(.NET)_.Net Framework 기본 - 비관리 리소스 종결 (0) | 2015.10.29 |
---|---|
#038_닷넷(.NET)_.Net Framework 기본 - 예외 처리 (0) | 2015.10.29 |
#037_닷넷(.NET)_.Net Framework 기본 -Object 메서드 (static) (0) | 2015.10.29 |
#036_닷넷(.NET)_.Net Framework 기본 -Object 메서드 (instance) (0) | 2015.10.29 |
#035_닷넷(.NET)_.Net Framework 기본 -Object 메서드 (virtual) (0) | 2015.10.28 |