Sealed란?
클래스를 상속 불가능한 클래스로 정의할때 사용.
해당 클래스를 상속으로 사용하려고 할때 에러를 호출함
왜 사용하는가?
- 역할이 고정된 유틸 클래스
- UpdateGuard는 상태 관리만 하는 “작은 유틸 도구” 역할
- 상속으로 확장할 필요가 거의 없음 → 오히려 상속 금지로 의도를 명확히 함
- 안정성 보장
- 만약 누군가 class MyGuard : UpdateGuard 해서 기능을 억지로 바꾸면,
기획한 로직이 깨질 수 있음 - 그래서 상속 막고, 필요하면 기능으로만 쓰도록 유도.
- 만약 누군가 class MyGuard : UpdateGuard 해서 기능을 억지로 바꾸면,
- 최적화 측면
- JIT(런타임 컴파일러)가 sealed 클래스를 보면 “이 클래스는 파생형이 없네?” 하고 메서드를 인라인 최적화하기 쉬워짐
- 미세하지만 성능에도 이득이 될 수 있음
'Unity > 문법' 카테고리의 다른 글
| [Unity]LinQ - FirstOrDefault, Where, Select 차이 (0) | 2025.04.28 |
|---|---|
| [Unity]Random.Range와 Random().Next 차이점 (0) | 2025.04.15 |
| [Unity] if문과 switch case 문 (0) | 2025.04.14 |
| [Unity] 람다식의 이해 (0) | 2025.04.09 |