주의!
오버로딩은 상속과 관련 X
메소드의 접근제한자와 리턴타입을 다르게 주어도 중복 !
생성자 내에 다른 생성자를 사용할 경우, 생성자 먼저 사용 !
파라미터를 추가하여 작성
파라미터 타입을 다르게하여 작성
파라미터의 타입과 개수를 동일하게 사용하고 싶을 때, 파라미터의 위치를 바꾸어 작성
(단, 동일한 타입의 위치를 바꾸는 것은 안된다.)
// Parent 부모 클래스
protected String info(){
return id + "," + passwd;
} // end of protected String info()---------
// Child 자식 클래스
// 방법 1. 파라미터 추가하여 작성
public void info(int n){}
// 방법 2. 파라미터 타입을 다르게하여 작성
public void info(String str){}
// 방법 3. 파라미터의 위치를 바꾸어 작성
public void info(int n, String str){}
public void info(String str, int n){}
//========================================================//
// 주의 1. 접근제한자를 다르게 준 경우
public void info(){} => 오류
// 주의 2. 리턴타입을 다르게 준 경우
public String info(){} => 오류
// 상속과 관련없기 때문에 부모클래스, 자식클래스 상관 X
public Child(){}
// 방법 1. 파라미터 추가하여 작성
public Child(String id, String passwd){}
// 방법 2. 파라미터 타입을 다르게하여 작성
public void info(int id, String passwd){}
// 방법 3. 파라미터의 위치를 바꾸어 작성
public void info(String passwd, int id){}
//========================================================//
// 주의 1. 생성자 내 다른 생성자를 사용할 경우, 생성자 먼저 사용!
// Ex) 다른 생성자 : this(id,passwd);
public Child(String id, String passwd, String name){
this(id, passwd); // 생성자 먼저 위치
this.name = name;
}
my.day.15.b.overloading -> Parent, Child, Main