오버로딩과 오버라이딩
오버로딩(Overloading) | 오버라이딩(Overriding) |
기존에 없는 매서드를 정의 하는 것 동일한 이름으로 다양한 데이터를 받아 들이기 위한 프로그래밍 기법 -> 유저 편의성 증대 매개변수의 갯수, 타입, 순서가 달라야 한다. (접근 제어자, 리턴 타입은 관계 없음) | 상속받은 매서드를 자신에 맞게 재정의 하는 것 오버라이딩은 상속과 관련이 있다. 상속받은 부모 매서드를 자신에 맞게 재정의 한다. 부모 메서드명과 동일해야 한다, 리턴타입, 매개변수 모두 동일해야 한다. 접근제어자는 하위에서 더 좁아지면 안된다. -> 부모 메서드로 표준화 |
오버로딩
public void eat(){}
public String eat(int i){}
public void eat(String s){}
public void eat(String s,int i){}
public void eat(int i,String s){}
오버라이딩
class Animal{
public void eat(){}
}
class Person extends Animal{
@overide
public void eat(){
//구현부를 자신에 맞게 수정
}
}
'Programming > java' 카테고리의 다른 글
[java] Generic (0) | 2014.09.17 |
---|---|
[java] 상속(Inheritance) (0) | 2014.09.17 |
[java] JavaSE 환경설정 (0) | 2014.09.17 |
[java] serialVersionUID를 선언하는 이유 (0) | 2014.09.02 |
[java] static 키워드 (0) | 2014.09.02 |