하위 클래스 못 만들게 하는 법으로Private 생성자만 두는 방식이 있다는데 왜 쓰는거야?Final class로 만들면 되지 않아?옛날에 final class가 없어서 쓰던 방법인가?
자식 클래스 인스턴스 만들려면 부모 클래스 생성자로 초기화를 해줘야 되는데 private이라 자식 클래스에서 호출할 방법이 없어서 인스턴스 생성을 못함 근데 부모 클래스에서는 팩토리 메서드 같은 걸 두면 인스턴스 만들 수 있음
안 되게 되는 원리는 알겠는데 왜 그렇게 복잡하게 하는지를 모르겠어.. 그냥 final 키워드 붙이면 되는거 아니야?
https://www.phind.com/search?cache=pu1yfxoa3hfqqdwwmqvuned7
정리하면 private constructor는 외부에서 객체 생성을 제한하기 위해서 사용, final class는 단순히 subclass 생성만 금지
고마웡