예시
class A{
void print1(){
System.out.println("A 클래스 print1");
}
void print2(){
System.out.println("A 클래스 print2");
}
}
class B extends A{
void print1(){
System.out.println("A 클래스 print1");
}
void print2(int a){
System.out.println("A 클래스 print2");
}
}
클래스 A에는 print1()과 print2() 메서드가 있다. 클래스 A를 상속받은 클래스 B에서는 print1()과 print2(int a)를 추가로 정의했다.
print1() : 상속받은 메서드와 리턴타입과 시그니처가 완벽하게 동일하므로 오버라이딩 된다.
print2(),print2(int a) : 클래스 A에게 상속받은 print2()메서드는 입력매개변수가 없지만 클래스 B에서 추가로 정의한 메서드는 입력매개변수로 정수값 1개를 받는 메서드이므로 오버로딩 된다.