1. 오버라이딩
= 상속받은 내용을 수정한다.
[조건]
1) extends or impleaments가 있어야한다.
2) 파라미터의 종류, 갯수, 순서가 같아야한다.
3) 반환타입과 이름이 같아야한다.
4) 자식의 메소드 접근제한자가 부모 메소드의 접근제한자보다 넓거나 같아야한다.
-> 공유하는 정도가 넓어야한다.
2. 오버로딩
= 같은 이름을 가지지만 매개변수가 다른 것을 의미 / 새로운 메소드 생성한다.
[조건]
1) 메소드 이름 동일
2) 매개변수가 각각 달라야한다.
-> 파라미터, 종류, 순서가 각가 달라야한다.
3. 상속이 필요없다.
ex) class Test{
static void display(int num1){
System.out.println(num1);
}
static void display(int num1, int num2){
System.out.println(num1*num2);
}
static void display(int num1, double num2){
System.out.println(num1+num2);
}
}
public class tets {
public static void main(String[] args) {
Test myfunc = new Test();
myfunc.display(10);
myfunc.display(10,20);
myfunc.display(10,3.14);
myfunc.display(10,'a');
}
}
'자바 이야기' 카테고리의 다른 글
객체지향 정리 (2) | 2020.09.27 |
---|---|
DB 연동방식 (0) | 2020.07.30 |
자바 이야기 4. 배럭만들기와 한 부대씩 움직이게 하기 (0) | 2020.02.28 |
자바 이야기 2. 내 맘대로 조종하기 / 귀찮은거 반복하게 하기 (0) | 2020.02.24 |
출력 메소드 (0) | 2020.02.19 |