Microsoft MVP성태의 닷넷 이야기
(글쓴이의 요청으로 삭제합니다.) [링크 복사], [링크+제목 복사],
조회: 18119
글쓴 사람
(none)
홈페이지
첨부 파일
 

비밀번호

댓글 작성자
 



2014-06-24 01시23분
1. 클래스와 인스턴스를 구분하세요. 클래스는 Type의 명세라고 보시면 되고, 그 Type으로 선언되면 인스턴스 변수가 생성되는 것입니다. 그 인스턴스의 변수값이 null입니다.
2. 클래스 자체는 null로 간주가 안되죠.
3. 클래스의 메서드를 null로 간주할 수는 없습니다. 해당 메서드는 이미 컴파일된 메서드의 위치를 가리키고 있습니다.
4. 왜 메서드가 자동/디폴트로 null로 되어야 할까요? 질문이 이해가 잘 안되는 군요.

if (폰트 != null) 로 체크하시면 됩니다. 위의 1번 설명에서 말했듯이, '폰트'변수는 null로 초기화되어 있습니다. 그 null값에서 Name 속성을 접근하려니 Null 참조 오류가 발생하는 것입니다. 제 책의 '3.3.4 변수'와 '4.1 클래스' 장을 다시 한번 읽어보세요. ^^


정성태
2014-06-28 01시25분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-28 08시34분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 09시48분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 09시49분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 02시20분
Font는 참조형이고, Color는 struct에서 오는 차이점입니다. 그래서 if (컬러 != null)을 하게 되면 컬러는 값형식이므로 언제나 null이 아닙니다. (혹시 컴파일하면 에러가 발생하지 않나요?)

그리고 덧글에서 if (폰트 = null)이라고 하면 폰트 변수에 null을 대입하는 것입니다. (이상하군요. 이 경우도 역시 C# 컴파일러가 오류를 낼텐데요.)

보다 자세한 설명은 책의 다음 3군데 내용을 참고하세요. ^^

- 3.3.4 변수

- 그림 4.9: object로부터 파생된 타입 관계

- 4.5.1.5 구조체
정성태
2014-06-29 02시38분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 02시49분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 02시54분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 03시00분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 03시01분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 03시04분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 03시12분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-29 03시57분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-30 12시31분
원래 값 타입에는 null이란 것이 없습니다. 예를 들어, int 형의 경우 0값으로 초기화되어 있는데 이것이 값이 입력되어 0인지, 입력되지 않아서 0인지 알 수 있는 방법이 없습니다.

이런 문제를 해결하기 위해 nullable 타입이 추가된 것입니다. 책의 586페이지를 참고하세요.
정성태
2014-06-30 02시45분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]
2014-06-30 02시47분
[(none)] (글쓴이의 요청으로 삭제합니다.)
[guest]

... 46  47  48  49  50  51  52  53  54  55  [56]  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
1281(non...7/1/201418672(글쓴이의 요청으로 삭제합니다.) [4]
1280동동이6/25/201417817안녕하세요. ocx의 비동기 또는 쓰레드에서 호출 [1]
1279(non...6/23/201418119(글쓴이의 요청으로 삭제합니다.) [17]
1278이상식6/19/201419183.net DLL 내 자바스크립트를 수정 또는 재정의 할 수 있을까요? [3]
1277김솔지6/18/201416299silverlight에서 datagrid, listbox질문이여 [2]
1276정우석6/16/201415787쿠키 [1]
1274김솔지6/10/201420387배포 페이지 url을 얻고 싶습니다. [8]
1272이훈모6/7/201415433정말 어려운 상황에 직면했습니다. [1]
1270Jong...6/2/201425279C#과 C++을 이용한 Image 처리. [13]
1269김아영5/29/201415862InitializeComponent 함수 호출 지연 현상 [5]
1268솔솔5/27/201415528smart client [1]
1266김솔지5/22/201417756clickonce 수정에 대해 알고싶습니다. [2]
1265이은아5/22/201422167DataGridView 헤더를 두줄이상으로 하고싶습니다. [1]파일 다운로드1
1264김인호5/18/201420271소스코드 및 예제그림 zip 파일 [1]
1263이영종5/15/201417804159페이지 오타인것 같습니다 [5]
1262(non...5/4/201418730(글쓴이의 요청으로 삭제합니다.) [10]
1261이근주5/4/201416475다시 한번 질문드릴께요. [2]
1259이근주5/1/201415887도서 오류인 것 같네요.. [1]
1258최세정4/28/201418534안녕하세요~php module 오류로 고민하다가 여기까지 왔네요..ㅜㅜ [2]
1252popo4/21/201417767바인딩 질문입니다. [2]
1251(non...4/20/201421879(글쓴이의 요청으로 삭제합니다.) [11]
1249홍용규4/17/201422185app.config 파일 관련 질문 있습니다. [2]
1246(non...3/30/201417969(글쓴이의 요청으로 삭제합니다.) [1]
1245POPO3/26/201417228Http 프로토콜 관련 질문 입니다. [1]
1244(non...3/26/201417130(글쓴이의 요청으로 삭제합니다.) [1]
1241(non...3/22/201421005(글쓴이의 요청으로 삭제합니다.) [4]
... 46  47  48  49  50  51  52  53  54  55  [56]  57  58  59  60  ...