이건 자바에만 해당되는 개념이 아니다. 거의 모든 객체지향 언어에서 사용되는 개념일 것이다.
오버로딩(overloading) - 메소드 이름이 같고 매개변수의 수나 타입이 틀린것이다.
int sum(int a, int b);
int sum(float a, float b);
이런것이다. 컴파일시 매개변수의 갯수와 데이터타입에 따라서 함수명을 바꿔준다고 한다. 자바에만 해당되지는 않을 것이다.
오버라이딩(overriding) - 상속에서 부모클래스의 메소드를 하위메소드에서 재정의 하는것이다.
class Father
{
void sayName()
{
System.out.print("My name is brown");
}
}
class Son extend father
{
void sayName()
{
System.out.print("My name is mike");
}
}
상위 클래스인 Father에 있는 sayName() 메소드를 하위 클래스인 Son에서 재정의 하는것입니다.
만약 다음과 같이 실행하게 되면 "My name is mike" 가 출력될것이다.
class test
{
public void static main(String args[])
{
Son son = new Son();
son.sayName();
}
}
이와 같이 하위클래스에서 상위클래스의 메소드를 재정의하는 것을 오버라이딩이라고 한다.
'Overloading'에 해당되는 글 1건
- 2009.03.18 오버로딩(overloading) 와 오버라이딩(overriding)
Programming/JAVA2009. 3. 18. 20:47
댓글을 달아 주세요