반응형
Override
객체지향 프로그래밍에서 상속 관계에서 부모 클래스가 가진 메서드를 자식 클래스에서 동일한 이름과 시그니처(매개 변수의 타입과 개수)로 다시 정의하는 것을 말한다. 이는 부모 클래스의 메서드를 자식 클래스에서 필요에 맞게 재구현하는 것을 의미한다.
>> 한줄요약
Override는 상속 관계에서 부모 클래스의 메서드를 자식 클래스에서 재정의하여 다양한 구현을 하게한다.
- 장점:
- 다형성을 구현할 수 있다. 즉, 같은 이름의 메서드가 다른 동작을 수행하게 된다.
- 코드의 재사용성을 높이고, 상속 구조에서 각 클래스가 자신의 독특한 동작을 구현할 수 있게 한다.
- 단점:
- 잘못된 오버라이딩이 발생할 수 있다. 예를 들어, 부모 클래스의 의도와 다르게 동작할 수 있다.
- 오버라이딩을 남발하면 코드를 이해하기 어려워질 수 있다.
Overload
같은 클래스 내에서 메서드 이름은 같지만 매개 변수의 타입, 순서, 개수가 다른 여러 버전을 정의하는 것이다. 이는 같은 이름의 메서드가 다양한 매개 변수 조합에 대해 다르게 동작할 수 있도록 한다.
>> 한줄요약
Overload는 같은 클래스 내에서 메서드 이름은 동일하지만 매개 변수의 형식이나 개수가 다른 여러 버전을 정의하여 유연성을 제공한다.
- 장점:
- 메서드 호출 시 다양한 매개 변수 조합을 지원하여 유연성을 제공한다.
- 코드의 가독성을 높일 수 있다. 메서드 이름이 같으므로 메서드의 기능을 추측하기 쉽기 때문.
- 단점:
- 메서드의 이름은 같지만 실제 동작이 다르므로, 오버로딩이 남발될 경우 어려움을 겪을 수 있다.
- 과도한 오버로딩은 코드를 복잡하게 만들 수 있다.
오늘의 회고
매일 기술면접질문을 푸는데 대강 알고있지만 설명은 못해서 검색해서 공부를 하게된다.
알고있다고 생각했던것들이 사실은 아니였다는점에 배신감이 들고.. 이번 기회에 확실히 알아가야겠다고 느꼈다.
오버라이드랑 오버로드 확인
반응형
'Record > TIL' 카테고리의 다른 글
[Unity] 블렌더 트리로 애니메이션 4방향 작업하기 (3) | 2024.07.05 |
---|---|
[Unity] 유니티로 픽셀 이미지(스프라이트) 가져올때 깨지거나 화질구려질때 해결방법 (0) | 2024.07.04 |
[C#] 확장 메서드란? (0) | 2024.07.02 |
[C#] static 한정자 (0) | 2024.07.01 |
[Unity] 내가 움직인 방향으로 3D 캐릭터 방향 고정하기 (0) | 2024.06.28 |