Tags
- UI/UX Engineer
- Java
- Android/iOS Developer
- postman
- 프런트엔드
- emplace_back
- Front-end developer
- oracle
- postman excel
- Android
- postman pre-request
- postman collection variables
- c#
- postman collection
- postman tests
- C++
- 다빈치 리졸브
- postman session
- solidity
- 우수한 프런트 개발자
- postman automations
- postman csv
- LSL_Script
- Interaction developer
- Unity
- postman html parse
- Intellij
- 좋은 개발자
- MFC
- web developer
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Archives
- Today
- Total
david's daily developer note
C#, 상속 관계가 존재하는 Class들에 대한 is연산중 범할 수 있는 논리 오류.. 본문
[Develop] Language/C#
C#, 상속 관계가 존재하는 Class들에 대한 is연산중 범할 수 있는 논리 오류..
mouse-david 2010. 10. 27. 16:43728x90
상속 관계가 존재하는 Class들에 대한 is연산중 범할 수 있는 논리 오류..가 있다. 상속관계를 이해하고, Type Check는 알지만,,
바쁜 코더들에게.. 쉽게 간과될 수 있는 논리 오류 일것이다.. 다음의 예제를 보자.
public class parent : Ifamily
{
}
public class child : parent
{
}
if (inputObject is parent)
{
// inputObject 가 child type이여도, parent class에서 상속 받았으므로, 첫번째 if문에 들어간다.
}
else if (inputObject is child)
{
// 다음의 조건문은 들어오지 않으므로, 오류!!
}
if-else 문에서 parent에 먼저 is연산을 수행 할 경우에, child 임에도, is parent 조건 절에서 수행되고, 실제 child의 is 연산은 수행되지 않을 것이다. 그러므로, child와 parent의 경우와 같이 상속관계에 존재하는 class스에 대한 type 체크는 하위 클레스를 우선해야한다.
728x90
'[Develop] Language > C#' 카테고리의 다른 글
C#, 이미지 작업. (0) | 2010.12.08 |
---|---|
.NET 응용 프로그램의 관리자 권한 수행. (0) | 2010.11.05 |
.NET 텍스트 파일 한글 읽어오기. (0) | 2010.10.27 |
C#, Collection Type Sorting [ Query Keyword , "orderby" , Sorting] (0) | 2010.10.01 |
.NET 설치 및 배포파일 만들기. (0) | 2010.09.29 |