본문 바로가기
  • 불확실한 내일을 위해
유니티 C#/이론

유니티 기초 - 오버로드(overload)와 오버라이드(override)

by 그린초코 2024. 4. 15.

유니티에서 객체 지향 언어인 C#의 특징 중 다형성(polymorphism)이라는 것이 있다.

다형성은 상황에 따라 갖게 되는 것으로 오버로드와 오버라이드로 나눌 수 있다.

 

- 오버로드(overload)

한 클래스 안에서 같은 이름의 함수를 여러개 만들 때 사용한다.

동일한 이름에 여러가지 기능을 구형하는 것으로, 이를 사용하는 행위를 오버로딩이라고 한다.

함수마다 매개형식을 다르게 지정해야 하고 인수에 따라 그에 맞는 함수가 호출된다.

예) Eat() 라는 먹는 함수를 지정했을 때  Eat(고기), Eat(김치) 라고 쓰면 고기를 먹고, 김치를 먹는 것으로 구현 된다. 

 

- 오버라이드(override)

상속성에 의해 부모 클래스에게 받은 기능을 재정의할 때 쓴다.

이때 자식 클래스는 재정의한 대로 기능이 수정되지만 부모 클래스는 캡슐화되어 영향을 받지 않는다. 

이를 사용하는 행위를 오버라이딩이라고 한다.

예) Eat(고기)를 고기먹는 행위라고 지정했을 때, 자식클래스만 Eat(고기)를 고기와 밥을 먹는 것으로 수정할 수 있다. 

728x90

댓글