Q & A

시삽: 레드플러스 님 
게시판 이동:
 제목 : Re : [C#교과서] p599. 오탈자 확인 부탁드립니다.
글번호: 1003
작성자: 레드플러스
작성일: 2021/12/30 오전 9:49:00
조회수: 2862
파일: MethodOverridePractice.png (35 KB) / 전송수: 1032
MethodOverridePractice.png

안녕하세요.

 

제가 책을 구성할 때,

소스와 실행 결과를 따로 모두 표기하므로,

 

실제 소스에 표시되는 주석에는 실행 결과 또는 그 의미를 설명으로 써 놓는 경우가 있습니다.

MethodOverridePractice.cs 파일은 그 중에서 그 의미를 적어 놓은 부분입니다.

그래서, 질문 주신 부분인 주석 처리 부분에서 혼동을 드린 부분은 양해 부탁드립니다. 

 

그 의미를 풀어 써보면,

  • 부모 클래스에 virtual 키워드가 없는데, 자식 클래스에서 부모 클래스의 멤버를 제 맘대로 썼다는 의미로 -> "자식이 예의가 없다."는 뜻이고,
    • 부모에 virtual이 없으면 웬만하면 부모에 있는 기능 그대로 써라~의 의미가 있습니다.
  • 부모 클래스에 virtual 키워드가 없는데, 자식 클래스에서는 new 키워드로 표시를 해서, 그나마 -> "자식이 예의바르다."는 뜻이고,
    • 부모에 virtual이 없지만, 자식에서"죄송한데요. 제가 다시 새롭게(new) 만들어 사용할게요."의 의미가 있습니다.
  • 부모 클래스에 virual 키워드를 미리 정의해서, 자식 클래스에서 맘껏 가져다 써도 된다라는 의미로 -> "부모가 관대하다."라는 설명을 붙여 놓은 것입니다.
    • 부모에 virtual이 있다는 것은 이미 부모가 잘 만들어 두었지만, 자식이 새롭게 재 정의(override)해서 사용해도 무관하다라고 미리 관대하게 표현해 놓은 의미입니다. 

 

아무튼,

주석에서 표시한 부분은 실제 실행 결과를 표기하기도 하지만, 대부분은 코드에 대한 보충 설명이 들어온다라고 봐주시면 감사하겠습니다.

 

현재 글은 오탈자는 아니지만, 오탈자 리스트에 보충 설명으로 링크를 걸어 놓겠습니다.

https://www.dotnetkorea.com/Books/Errata

 

좋은 피드백 감사합니다.

 

 

 

 

 

 


On 2021-12-30 오전 9:37:00, '유지훈' wrote:

 

 


C#교과서 p.599 상단 코드부분을 보면, 아래와 같습니다.

 

Child baby = new Child();

baby.Say(); // 자식이 예의가 없다

baby.Hi(); // 자식이 예의바르다

baby.Walk(); // 부모가 관대하다.

 

여기서 볼드체로 표시한 주석 내용이 실행 결과와 다릅니다.

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 [C#교과서] p646. 오탈자 확인 부탁드립니다. - 유지훈 2021-12-31 2813
  [C#교과서] p599. 오탈자 확인 부탁드립니다. - 유지훈 2021-12-30 2071
현재글 Re : [C#교과서] p599. 오탈자 확인 부탁드립니다. MethodOverridePractice.png(35 KB) 레드플러스 2021-12-30 2862
다음글 [C#교과서][p577 질문] 예제가 이해가 되질 않습니다. - 유지훈 2021-12-29 2088
 
손님 사용자 Anonymous (손님)
로그인 Home