1. 블루프린트 클래스

2. 멤버 변수와 멤버 함수

3. is Vaild

4. Player vs Monster

5. 상속성

shift+s 모두저장

6. 캐스팅

player knight 말고도 kinght player로 캐스팅할 수 도있는데

왜하냐?

캐스팅(casting)은 프로그래밍에서 데이터 타입을 변환하는 과정을 말합니다. 주로 두 가지 종류의 캐스팅이 있습니다:

  1. 업캐스팅(Upcasting): 자식 클래스의 객체를 부모 클래스 타입으로 변환하는 것입니다. 이는 항상 안전하며 자동으로 수행됩니다.
  2. 다운캐스팅(Downcasting): 부모 클래스의 객체를 자식 클래스 타입으로 변환하는 것입니다. 이는 명시적으로 수행해야 하며, 런타임 오류의 위험이 있습니다.
  • 인벤토리 시스템: 게임에 ‘아이템’ 클래스가 있고, ‘무기’, ‘방어구’, ‘소비아이템’ 등이 이를 상속받는다고 가정합시다.
아이템[] 인벤토리 = new 아이템[20]; 
인벤토리[0] = new 무기();   
// 업캐스팅 인벤토리[1] = new 방어구(); 
// 업캐스팅 인벤토리[2] = new 소비아이템(); // 업캐스팅
    
여기서 각 자식 클래스의 객체들이 '아이템' 타입으로 업캐스팅되어 저장됩니다.
  • NPC 대화 시스템: ‘캐릭터’ 클래스가 있고, ‘플레이어’, ‘NPC’ 클래스가 이를 상속받습니다.
`void 대화하기(캐릭터 대상) {     대상.말하기("안녕하세요!"); } 
플레이어 player = new 플레이어(); 
NPC merchant = new NPC(); 대화하기(player);  

7. 은닉성

—안전을 강화한다? ex_자동차 안에숨겨놓은게 엄청많은데 겉에는 버튼몇개만있다

private public 임 걍

private : 비공개 protected: 동일한 클래스에서만 사용 public과 private 의 중간 public: 공개

8. 다형성

9. 인터페이스