📖C# Readonly, Const
Readonly
- 읽기 전용 변수는 initializer, 생성자 메서드에 할당 가능
- 읽기 전용 변수는 여러번 재정의 가 가능하다.
public class Readonly
{
private readonly ExampleObject _exampleObjecct = new ExampleObject() { Id = 1 };
public Readonly()
{
// _exampleObjecct변수를 재정의 하는 모습
_exampleObjecct = new ExampleObject( Id = 2);
_exampleObjecct = new ExampleObject( Id = 3);
}
}
public class ExampleObject
{
public int id {get; set;}
}
- 메서드 밖에서는 재정의를 할 수 없음
Const
const 변수 (상수)는 런타임에서 생성되기 때문에 참조를 할 수 없다. (재할당 불가 )
상수변수는 정적변수로 할 수 없다.
컴파일러는 IL 코드(중간 언어)를 생성할때 "const" 변수의 모든 참조를 해당 값으로 바꾼다.
사용
public class ConstClass { private const string _constString = "const"; public ConstClass() { Console.WriteLine(_constString); } }
const가 참조된 변수들이 있다면 빌드를 다시 해야 함. (앱 버전이 바뀔때 라든가..)
'Develop Dairy > C#' 카테고리의 다른 글
C# How to Calculator Performance (0) | 2022.10.31 |
---|---|
[C#, Csharp] Json 다루기 (0) | 2022.04.29 |
간단한 DI(Dependency Injection)의 이해&예제 (2021. 05. 28) (0) | 2021.05.28 |
자동 구현 Property 알아보기. (2021. 05. 11) (0) | 2021.05.11 |
Csharp은 어떻게 실행 되는걸까..? (2021. 05. 11) (0) | 2021.05.11 |