[Unity]/[C#]

[C# 기초] #15. 클래스(class) - MonoBehavior와 상속

극꼼 2021. 7. 26. 14:50
반응형


 

안녕하세요 극꼼이입니다. 

지난 포스팅에서 class에 대해 다룬 것에 이어 상속과 MonoBehavior에 대해 다뤄보겠습니다.

* class : https://geukggom.tistory.com/101


우선 상속에 대해서는 객체 지향 프로그래밍에 대한 포스팅(https://geukggom.tistory.com/100)에서 조금 설명한 바 있습니다.

 

상속은 부모 클래스로부터 공통된 변수와 함수, 인터페이스를 그대로 물려받는 것을 말합니다.

상속은 비슷한 객체들의 부모 클래스와 인터페이스를 정의하여 공통화 한 다음 상속받아 객체를 좀 더 다루기 쉽게 합니다. 

 

상속은 다음과 같은 특성을 가집니다.

1. 부모 클래스에서 공통 기능에 대한 동일 속성과 함수를 정의하면, 해당 클래스를 상속받는 자식 클래스에서는 정의하지 않고 공통 기능을 사용할 수 있음.

2. 특정 속성과 함수의 내용을 자식 클래스에서 다르게 동작하도록 재정의할 수 있음.

 

상속에 쓰이는 키워드인 virtual, override, abstract에 대한 포스팅입니다. 

https://geukggom.tistory.com/75

 

[C#] 상속(virtual, override, abstract)

안녕하세요 극꼼이입니다. 이 포스팅에서는 상속을 배우면서 공부한 virtual, override, abstract에 대해 정리할 생각입니다. virtual, override, abstract는 모두 부모, 자식 함수간의 상속에 쓰이는 키워드입

geukggom.tistory.com

이 포스팅에서 상속하는 방법에 대해 좀 더 자세히 다루고 있습니다.

 


MonoBehaviour는 유니티에서 모든 스크립트가 상속받는 기본 클래스입니다. MonoBehaviour 클래스 또한 취상위 부모 클래스가 아니라 여러 개의 클래스를 상속받고 있습니다.

* MonoBehaviour의 상위 클래스 : Object > Component > Behaviour > MonoBehaviour

 

- MonoBehaviour를 상속받지 않는 스크립트는 inspector창에서 오브젝트의 컴포넌트로 붙일 수 없습니다.

 

- new 키워드를 MonoBehavior에 사용하면 경고 표시가 뜹니다. 따라서 객체를 생성하고 싶다면 원하는 오브젝트에 AddComponent()로 클래스를 붙이거나, 해당 클래스가 부착된 오브젝트를 Instantiate로 생성해줍니다. 

 

- MonoBehaviour가 가진 라이프사이클(기본 함수) : https://geukggom.tistory.com/84

 

[C# 기초] #04 : 함수 - 라이프사이클(Start, Update 등)

유니티 기초 글 링크 모음 : geukggom.tistory.com/1 [Unity] 공부글 모음 1) 변수 - 데이터형식(Data Type)과 형변환 : geukggom.tistory.com/20 - 값 형식 / 참조 형식 : https://geukggom.tistory.com/44 - L..

geukggom.tistory.com

 

- 라이프사이클 함수 이외의 기타 MonoBehaviour가 가진 메시지 : https://docs.unity3d.com/kr/530/ScriptReference/MonoBehaviour.html

 

Unity - 스크립팅 API: MonoBehaviour

Javascript를 사용하는 경우에, 자동으로 MonoBehaviour를 상속받습니다. C# 또는 Boo언어를 사용하는 경우에는 명시적으로 MonoBehaviour를 상속받아야 합니다. Note: MonoBehaviour를 비활성화 하는 체크박스(에

docs.unity3d.com

 

반응형