추상 클래스의 생성자


추상 클래스는 인스턴스화할 수 없다고 했습니다. 그러면 추상 클래스에는 생성자를 선언할 필요가 없을까요?




생성자를 선언하지 않지 않아도 상관은 없다. 하지만 상속을 하는 클래스들마다 각자의 생성자에서 중복된 구현을 해야 하므로 좋지 않다. 


만약 각각의 생성자에서의 공통적인 초기화 부분이 달라질 경우, 다른 클래스들을 다 찾아서 고쳐야 하는 수고를 해야만 한다. 그러한 수고를 하는 것은 상관없지만, 실수로 몇 개를 빼먹게 되면 잘못된 결과가 산출되는 위험이 발생한다. 그러므로 공통적인 초기화는 추상 클래스의 생성자에서 구현해 주는 것이 좋다.

+ Recent posts