Java/Effective Java
-
Static Factory Method instead ConstructorJava/Effective Java 2021. 2. 9. 22:55
클라이언트가 클래스의 인스턴스를 얻는 방법으로 대표적인 public 생성자가 있다. 다른 방법으로는 정적 팩토리 메소드가 있다. public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; } 왜 정적 팩토리 메소드인가? 첫째. 이름을 가질 수 있다. 다음 중 "값이 소수인 BigInteger 를 반환한다" 라는 의미를 표현하는 것은? 1. BigInteger(int, int, Random); 2. BigInteger.probablePrime(); 시그니처를 표시하기 좋은 2번이 장점이 크다. 이름을 명시할 수 있기에 장점이다. 둘째. 호출될 때마다 인스턴스를 새로 생성하지 않아도 된다. 반복되는 요청에 같은 객체를..