오버로딩과 오버라이딩의 차이점
오버로딩과 오버라이딩의 개념은 다음과 같습니다.
개념 | 설명 |
오버로딩 | 메소드 이름이 같지만 인수의 형과 개수가 다른 메소드를 정의 |
오버라이딩 | 슈퍼클래스와 서브클래스에서 메소드이름 인수의 형 개수가 모두 똑같은 메소드를 정의 |
예제 코드
오버로딩
같은 메소드 명에 인자 수가 다른 메소드를 사용하는 방법입니다.
이런 경우에는 인자와 타입에 맞는 메소드가 호출됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
public class overloadingTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
ol col = new ol();
col.setol_1(10);
col.setol_1(10, 20);
}
}
class ol {
public void setol_1 (int i1) {
System.out.println(i1);
}
public void setol_1 (int i1, int i2) {
System.out.println(i1 + ", " + i2);
}
}
|
cs |
오버라이딩
서브클래스와 슈퍼클래스에서 메소드이름 / 형 / 개수가 모두 똑같은 메소드를 사용하는 방법입니다.
이런 경우에는 서브클래스의 메소드가 호출됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
public class overridingTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
eov eov1 = new eov();
eov1.show(10);
}
}
class ov {
public void show(int iov) {
System.out.println("ov class : " + iov);
}
}
class eov extends ov {
public void show(int ieov) {
System.out.println("eov class : " + ieov);
}
}
|
cs |
자바 오버로딩
자바 오버라이딩
자바 오버로딩과 오버라이딩 차이
자바 오버로딩과 오버라이딩 사용방법
'Computer Language > JAVA' 카테고리의 다른 글
[JAVA] 자바 instanceof 연산자 (0) | 2020.12.16 |
---|---|
[JAVA] 자바 추상클래스란 (0) | 2020.12.16 |
[JAVA] 자바 오버라이딩이란? (0) | 2020.12.13 |
[JAVA] 자바 public, private, protected 접근자의 차이점 (0) | 2020.12.13 |
[JAVA] this() 와 super() 의 차이점 (0) | 2020.12.13 |