본문 바로가기
[ Unity ]/- 유니티 실습

유니티 상속(Inheritance)

by MRG 2025. 1. 15.
728x90
반응형

▣ 상속이란?
상속은 객체 지향 프로그래밍(Object-Oriented Programming, OOP)에서 자식 클래스가 부모 클래스의 속성과 메서드를 물려받는 기능을 말합니다. 이를 통해 코드 재사용성을 높이고, 공통 기능을 한 곳에서 관리할 수 있어 유지보수성을 향상할 수 있습니다.

▣  왜 사용하는가?
코드 재사용성: 공통된 기능을 부모 클래스에 정의하여 여러 자식 클래스에서 재사용할 수 있습니다.
유지보수성: 기능을 한 곳에서 관리하여 수정이 필요할 때 중복된 코드를 일일이 수정할 필요가 없습니다.
확장성: 기존 코드를 기반으로 새로운 기능을 쉽게 추가할 수 있습니다.
가독성: 중복 코드를 제거해 코드가 간결해지고 읽기 쉬워집니다.


▣  언제 사용하는가?
여러 클래스가 공통된 속성과 메서드를 가질 때.
유사한 기능을 가진 클래스들이 있을 때.
기존 클래스를 확장하여 새로운 기능을 추가하고 싶을 때.

 

 

 

 

▣ 코드 설명
Animal 클래스:
name 속성과 Speak() 메서드를 가지고 있음.
모든 동물 클래스가 공통적으로 사용할 수 있는 기능 정의.


Dog 클래스:
Animal 클래스를 상속받아 Bark()라는 고유 메서드 추가.


Cat 클래스:
Animal 클래스를 상속받아 Meow()라는 고유 메서드 추가.


InheritanceExample 클래스:
Dog와 Cat 객체를 생성하고 부모와 자식 클래스의 메서드를 호출하여 기능 확인.

 

 

 

 

▣ 코드 설명
BaseAI.cs:
Search()와 Move() 메서드를 통해 모든 AI의 공통 동작 정의.


EnemyAI.cs:
Attack() 메서드를 추가해 적 AI의 고유 동작 정의.


FriendlyAI.cs:
Support() 메서드를 추가해 아군 AI의 고유 동작 정의.


TestAI.cs:
GameObject를 생성하고 EnemyAI와 FriendlyAI 컴포넌트를 추가하여 각각의 AI 동작 테스트.

728x90
반응형

'[ Unity ] > - 유니티 실습' 카테고리의 다른 글

유니티 namespace  (0) 2025.01.14
유니티 new 키워드  (0) 2025.01.13
유니티 GitHub 기본 연동방법  (0) 2025.01.10
유니티 MonoBehaviour  (0) 2025.01.10
유니티 반복문  (0) 2025.01.09

댓글