오버로딩 ( Over Loading )
오버로딩은 한 클래스 내에 여러 같은 이름의 메소드르 정의해, 프로그램의 가독성을 증가시키는 방법이다.
오버로딩의 특징
- 메소드 이름이 같다
- 파라미터 개수가 달라야한다
- 파라미터 갯수가 같다면, 데이터 타입이 달라야한다.
public class Overloading{
void test(){
System.out.println(" 매개변수 없음 ");
}
void test(int a, int b){
System.out.println(" 매개변수 없음 " + a + b);
}
void test(string abc){
System.out.println(" 매개변수 없음 " + abc);
}
}
이렇게 메소드의 이름을 같게하고 매개변수의 갯수를 다르게 혹은 타입을 다르게 선언하면 된다.
이것이 오버 로딩이다.
오버라이딩 ( Over Riding )
오버라이딩은 상속관계인 클래스에서 부모 클래스에 선언된 메소드를 가져와 같은 이름의 메소드를 사용하는 것이다.
오버라이딩의 특징
- 메소드의 이름이 같고 파라미터의 개수, 데이터 타입이 같아야한다.
- 메소드의 리턴형도 같아야한다.
- 상위 메소드와 동일하거나 내용이 추가되어야 한다.
class Test {
void testSomething() {
System.out.println("just test");
}
}
class Something extends Test {
@Override
void testSomething() {
System.out.println("test Plus");
}
}
public class Main {
public static void main(String[] args) {
test testA = new Test();
test testB = new Something();
testA.testSomething(); // "just test"
testB.testSomething(); // "test Plus"
}
}
Test 클래스가 있고 testSomething 메소드를 상속하여 사용하는 Something 클래스가 있다.
상속받아 사용할때 @Overriding 을 사용해 기존에 있던 데이터를 변환, 추가하여 사용할 수 있다.
🔗 참고
https://brunch.co.kr/@kimkm4726/2
overloading vs. overriding
"오버로딩과 오버라이딩의 차이점을 설명해보세요." IT분야로 취업을 희망하는 대학생들은 반드시 넘겨야 할 전공면접(실무면접)에서 단골 문제중 하나로 알려져있다. 나는 학부 시절 전공 수
brunch.co.kr
Overriding(재정의)
Overriding - 🐥 카카오 테크 캠퍼스 오버라이딩은 상위 클래스에 정의된 메서드의 구현 내용이 하위 클래스에서 구현할 내용과 맞지 않는 경우 하위 클래스에서 동일한 이름의 메서드를 재정의
berom.tistory.com
'CS > IT' 카테고리의 다른 글
[FE, BE] 어드민(admin)이란? (2) | 2024.02.26 |
---|---|
메모이제이션 이란? (0) | 2023.08.31 |
SI(System Integration)와 SM(System Management) (0) | 2023.03.20 |