function overriding
page 335

어. PermanentWorker클래스에도 GetPay 함수와 ShowSalaryinfo함수가 있는데
유도 클래스인 SalesWorker클래스에서도 동일한 이름과 형태로 두 함수를 정의하였네??

이를 가르켜 function overriding이라 한다. (함수 오버로딩과 혼동하지 말자.) 그리고 
이렇게 함수가 오버라이딩되면 오버라이딩 된 기초 클래스의 함수는 오버라이딩을 한
유도 클래스의 함수에 가려진다. 그래서 위의 SalesWorker클래스 내에 GetPay 함수를
호출하면 SalesWorker 클래스에 정의된 GetPay함수가 호출된다. 

!!!! 함수 오버라이딩 VS 함수 오버로딩
기초 클래스와 동일한 이름의 함수를 유도 클래스에서 정의한다고 해서 무조건 함수
오버라이딩이 되는 것은 아니다. 매개변수의 자료형 및 개수가 다르면 이는 함수 오버로딩
이 되어 전달되는 인자에 따라서 호출되는 함수가 결정된다. 즉, 함수 오버로딩은 상속의
관계에서도 구성이 될 수 있다.