Memory Drive

반응형
오버로딩과 오버라이딩은 서로 혼동하기 쉽지만 사실 그 차이는 명백하다. 오버로딩은 기존에 없는 새로운 메서드를 추가하는 것이고, 오버라이딩은 조상으로부터 상속받은 메서드의 내용을 변경하는 것이다.


오버로딩(Overloading) - 기존에 없는 새로운 메서드를 정의하는 것(new)
오버라이딩(Overriding) - 상속받은 메서드의 내용을 변경하는 것(change, modify)


아래의 코드를 보고 오버로딩과 오버라이딩을 구별할 수 있어야 한다.


class Parent {
    void parentMethod() {}
}

class Child extends Parent {
    void parentMethod() {} // 오버라이딩
    void parentMethod(int i) {} // 오버로딩

    void childMethod() {}
    void childMethod(int i) {} // 오버로딩
    void childMethod() {}       // 에러!!! 중복정의 되었음.(already defined in Child)
}
반응형

'Computer_IT > JAVA' 카테고리의 다른 글

예약어 super  (0) 2006.04.01
멤버 변수의 상속  (0) 2006.04.01
-- ++ 연산자 테스트  (0) 2006.04.01
JAVA 기본 Data타입  (0) 2006.04.01
Jad - the fast JAva Decompiler  (0) 2006.03.17