프로그램/Java

[Java] 함수 오버라이딩 (Function Overriding)

승미니1024 2016. 12. 9. 07:00

자바 함수 오버라이딩(Overriding)



함수 오버라이딩(Overriding)란



함수 오버라이딩이란 상속시 부모의 클래스 함수를 재 정의 하는 것을 의미 한다.

오버로딩과 명명이 비슷해 혼동이 될 수 있는데 오버로딩은 똑같은 함수 명에 인자나 리턴값 수나 형식을 달리해서

만드는 것을 뜻한다.


[부모 클래스]

package sample;


public class human {

public void introduce()

{

System.out.println("I`m human");

}

}


[자식 클래스]

package sample;


public class korean extends human {

public void introduce()

{

System.out.println("I`m Korean");

}

}


부모인 human 클래스의 introduce 함수를 자식인 korean 클래스가 상속 받아서 다시 재정의 하고 있다.


[사용 예제]

package sample;


public class sample {

public static void main(String[] args) {

    korean k = new korean();

   human h = new human();

   

   k.introduce();

   h.introduce();

}

}



[결과]

I`m Korean

I`m human


자식 클래스인 korean이 부모 클래스의 함수를 재정의 하여 결과 값이 다르게 출력 되는 것을 확인 할 수 있다.


이상으로 오버라이딩에 대해 설명 드렸습니다.

도움이 되셨나요?



반응형