이건 자바에만 해당되는 개념이 아니다. 거의 모든 객체지향 언어에서 사용되는 개념일 것이다.
오버로딩(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();
}
}
이와 같이 하위클래스에서 상위클래스의 메소드를 재정의하는 것을 오버라이딩이라고 한다.
'Programming' 카테고리의 다른 글
배열 선언, 복사 (0) | 2009.03.24 |
---|---|
퀵정렬(quick sort) (0) | 2009.03.19 |
[C] 함수와 배열 그리고 포인터 - 1부 (0) | 2009.03.18 |
Visual Studio 2005 or 2008 에서 C의 사용법 (0) | 2009.03.16 |
콘솔에서 잠시 멈추기 (2) | 2009.03.13 |