쿄쿄 IT
오버로딩 / 오버라이딩 차이 본문
* 오버로딩(Overloading)
void fn(int a); //
void fn(char a); // 3 타입(int,char) 차이
void fn(int a,int b); // 4 매개변수의 개수(int b) 차이
- 매개변수의 유형(타입)과 개수가 다르게 하여 같은 이름의 메소드를 여러개 가지는 기법
1) 메소드 이름이 같아야 한다.
2) 리턴형이 같아도 되고 달라도된다.
3) 매개변수의 유형과 개수가 달라야 한다.
4) 매개변수의 유형과 개수가 같을 경우, 데이터타입이 달라야 한다.
* 오버라이딩(Overriding)
class A{
void fn(int a);
}
class B extends A{
void fn(int a);
}
// extends 상속 필수
// 메소드 이름 fn
// 매개변수 int a
// 리턴 값 void
// 같아야함
- 상위클래스(부모클래스)가 가지고 있는 메소드를 하위클래스(자식클래스)가 재정의해서 사용하는 기법
1) 오버라이드 하고자 하는 메소드가 상위 클래스에 존재해야 한다.
2) 메소드 이름, 매개변수, 리턴 값이 같아야 한다.
3) 상위 메소드와 동일하거나 내용이 추가 되어야 한다.
* 오버로딩(Overloading)과 오버라이딩(Overriding) 성립조건
오버로딩 - 기존에 없는 새로운 메소드를 추가하는 것
오버라이딩 - 상속받은 메소드를 재정의 하는 것
'취업 준비 > 기술 면접' 카테고리의 다른 글
프로세스와 스레드 (0) | 2020.12.09 |
---|---|
접근 제어자 (0) | 2020.12.09 |
JAVA 란? (0) | 2020.12.09 |
상속과 구현의 장단점/차이점 (0) | 2020.12.09 |
객체지향 프로그래밍(OOP, Object Oriented Programing) (0) | 2020.12.09 |