Learning
When: 1학년 9월 8일
How:
멤버의 이름으로 인해 타입이 가려지는 현상을 공부하던 중 Obscuring이라는 현상도 있어서 이것에 대해 공부하게 되었습니다.
Understanding:
- 설명 : Obscuring은 Shadoing과 비슷하게 클래스의 멤버의 다른 것의 이름과 겹쳐서 생기는 문제입니다. 하지만 Obscruing은 범위가 조금 더 큰데, 클래스의 멤버가 단순히 더 넓은 스코프의 멤버를 가리는 것이 아닌, 네임스페이스 안에 있는 클래스나 네임스페이스를 가리는 현상입니다. 그리고 Shadoing은 변수의 이름과 메서드 이름이 겹칠 때 변수의 이름을 굳이 따로 만들 필요가 없다는 장점이 있지만 Obscuring은 그냥 버그에 가깝습니다.
class Player { }
class Program
{
static void Main()
{
int Player = 10;
Console.WriteLine(Player);
}
}
Result: 생각해보니 Shadoing이나 Hiding은 의도를 가지고 사용할 수 있다는 것을 깨달았습니다.
'C#' 카테고리의 다른 글
| [C#] 박싱(Boxing)과 언박싱(Unboxing) (0) | 2025.10.20 |
|---|---|
| [C#] 죽음의 다이아몬드에 대한 개인적인 생각 (반박 환영) (0) | 2025.09.12 |
| [C#] Hiding (3) | 2025.09.07 |
| [C#] Shadoing (0) | 2025.09.06 |
| [C#] switch 식 (0) | 2025.09.02 |