[유니티 C# 기초 강의] 10. 클래스와 상속

2016. 7. 25. 22:26· Frontend/Unity


이 글은 PC 버전 TISTORY에 최적화 되어있습니다.


서론

유니티에서 클래스라는 것, 스크립트 라는 것은 오브젝트에 생명을 불어 넣는 온기와 같습니다. 아무 움직임 없는 오브젝트에 붙여 넣어 이름을 붙여주고, 걷게하는 등 오브젝트를 오브젝트답게 사용하도록 해주는 것이죠. 




클래스에 대하여

클래스는 기본적으로 속성(변수)와 행동(메서드)로 이루어져 있습니다.




속성이라함은 이름, 나이, 성별 같은 개체에 특별히 주어지는 말 그대로 속성이고, 행동은 함수나 메소드로 불리는 어떠한 것을 수행하는 것을 말합니다.






클래스의 상속


위와 같은 트리구조를 상속 계층도라고 합니다. 상속이라는 것은 상위의 부모 클래스의 변수, 메소드를 모두 흡수해서 완전히 새로운 클래스를 만드는 것으로, 원래의 상위 클래스는 건들이지 않으면서, 확장된 클래스를 만들 수 있습니다. 예를 들어 오크궁수와 오크전사, 오크마법사는 기본적으로 오크이므로 먹고 걷기를 합니다. 하지만 각각의 싸움 방식은 쏘고, 찌르고, 메테오를 날리는 등 다릅니다. 이렇게 궁수, 전사, 마법사를 각각 클래스로 만들면 먹고 걷기와 같이 중복되는 코드가 들어가게 되고 수정시에도 각각 수정해야합니다. 그러나 오크 클래스를 정의해서 서로 다른 것만을 추가해 상속하면 해결됩니다.




위와 같은 특징을 가지는 오크 클래스를 선언했습니다.





서로 다른 이름을 가진 객체를 오크 클래스로부터 상속받아 생성합니다. 각각의 이름과 성별, 나이 등은 다를 수 있지만, 기본적으로 이름, 성별, 나이 등이 존재한다는 특징을 가지고 있습니다. 







MonoBehaviour에 대하여




여러분은 이제 1. 스크립트 생성에서 알아보기로 했던 MonoBehaviour를 드디어 이해할 수 있게 되었습니다. 첫 문장의 의미는 MonoBehaviour 클래스를 상속하는 Hero 클래스라는 것 입니다. 즉 MonoBehaviour도 하나의 클래스라는 것을 알 수 있고 그 클래스의 모든 것을 가져오면서 확장하겠다는 의미입니다.
















지금까지 봐왔던 Start( ), Update( ) 함수도 우리가 구현하지 않았지만 존재하고 사용할 수 있다는 것은 MonoBehaviour 클래스에 속해있는 함수라는 것을 알 수 있죠.
















Start( ), Update( ) 와 같이 MonoBehaviour를 상속해 사용하는 유니티 내장함수는 다양하니 여기를 통해서 살펴보세요. 다음 파트에서는 클래스와 다형성에 대해서 살펴보도록 하겠습니다.













반응형
저작자표시 (새창열림)

'Frontend > Unity' 카테고리의 다른 글

[유니티 디버깅] ⑦ 모노디벨롭을 통한 디버깅  (0) 2016.08.03
[유니티 디버깅] ① 컴파일 오류 & 콘솔  (0) 2016.08.02
[유니티 C# 기초 강의] 11. 클래스와 다형성  (4) 2016.07.26
[유니티 C# 기초 강의] 9. 프로퍼티  (8) 2016.07.25
[유니티 C# 기초 강의] 8. 반복문  (2) 2016.07.25
[유니티 C# 기초 강의] 7. 배열  (3) 2016.07.25
'Frontend/Unity' 카테고리의 다른 글
  • [유니티 디버깅] ① 컴파일 오류 & 콘솔
  • [유니티 C# 기초 강의] 11. 클래스와 다형성
  • [유니티 C# 기초 강의] 9. 프로퍼티
  • [유니티 C# 기초 강의] 8. 반복문
에반황
에반황
"어른이면서 애이기도 하고 싶다."
에반황
에반, 어른반
에반황
전체
오늘
어제
  • 전체보기 (118)
    • About (1)
    • Backend (5)
      • Django (3)
      • Spring (2)
    • Database (2)
      • 아키텍처 (0)
      • SQL (0)
      • Redis (2)
      • 코딩 테스트 (0)
      • 요구 사항 해결 (0)
    • Infra, Cloud (0)
      • AWS (0)
      • GoCD (0)
      • Docker (0)
      • Kubernetes (0)
      • Mesos Marathon (0)
    • Basic (34)
      • C (1)
      • C# (4)
      • C++ (1)
      • Java (9)
      • Javascript (6)
      • Typescript (5)
      • GO (0)
      • Python (4)
      • 프로그래밍 기초 (1)
      • 게임 디자인 패턴 (1)
      • 운영체제 (0)
      • 알고리즘 (2)
      • 자료구조 (0)
    • Computer Science (0)
    • Frontend (74)
      • Swift (1)
      • Unity (31)
      • Android (13)
      • Vue.js (2)
      • Phaser (1)
      • Cocos2D JS (2)
      • Cocos Creator (16)
      • Facebook Instant Game (8)
반응형

인기 글

최근 댓글

hELLO · Designed By 정상우.v4.2.2
에반황
[유니티 C# 기초 강의] 10. 클래스와 상속
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.