객체를 생성하는 작업을 할 때 복잡하고 어렵거나 특정한 절차를 따라야 할 경우 이를 대행하는 함수를 둘 수 있다. 문제 사례 설명 윈도우 운영체제에서 문서 파일을 더블클릭한 경우를 생각해보자. 문서 파일 이름의 확장자에 따라 적절한 응용 프로그램이 실행될 것이며, 응용 프로그램은 문서 파일을 열어 그 내용을 화면 상에 보여줄 것이다. 예를 들어 파일 이름 확장자가 hwp면 한글 소프트웨어가 실행되고, doc이면 마이크로소프트 워드가, zip이면 알집과 같은 압축 관련 소프트웨어가 실행될 것이다. 이런 동작 과정을 객체지향 관점에서 살펴보면 두 가지 종류의 객체가 생성되어야 함을 알 수 있다. 그 하나는 응용프로그램 객체이고, 다른 하나는 더블클릭된 문서파일에 대한 객체이다. 먼저 응용 프로그램 객체는 운..