-
Overriding / Overloading 차이CS 지식/Common 2021. 4. 15. 22:37
■ Overriding
1) 정의
부모 - 자식 class 로 상속을 할 때,
자식 class에서 부모에서 정의된 매써드를 같은 이름의 매써드로 바꿔치기 하는 것
( 객체지향 언어의 다형성과 관련있음)
상속 관계에 있는 클래스 간에 같은 이름의 메소드를 정의하는 것,
만약 자식클래스가 부모클래스에서 선언된 것과 같은 메소드를 가질 때, 메소드 오버라이딩이라고 함.■ Overloading
1) 정의
- Java 등...
언어에서 같은 class안에 이름이 같으나 다른 기능을 하는 여러 매써드를 정의할 수 있음
1) 메소드 이름이 같아야 한다.
2) 리턴형이 같아도 되고 달라도 된다.
3) 파라미터 개수가 달라야 한다 .
4) 파라미터 개수가 같을 경우, 데이터타입이 달라야 한다.
* 리턴타입은 시그니처에 포함되지 않기 때문에 주의. 컴파일 에러 발생.- 파이썬 등
init 생성자 overloading 불가능!
참조 : korshika.tistory.com/26?category=962146
참조 :
반응형'CS 지식 > Common' 카테고리의 다른 글
CS - 공부 참조 (0) 2021.05.23 절차지향 vs 객체지향(객체지향 3대요소) (0) 2021.04.30 함수형 프로그래밍 vs 절차형 프로그래밍 (0) 2021.04.26 디자인 패턴 (python) (0) 2021.03.21