Java Strings: "String s = new String("silly")"를 가리키는 손가락
Java 프로그래밍의 세계를 탐험하면서 , String 객체의 적절한 생성에 관한 쿼리가 나타납니다. 문제는 "new String(...)" 호출 대신 리터럴을 활용하여 불필요한 문자열 생성을 피한다는 개념에서 비롯됩니다. 그러나 이 지침은 CaseInsensitiveString과 같은 사용자 정의 문자열 클래스의 사용과 모순되는 것 같습니다.
질문 1: "new CaseInsensitiveString(...)"을 사용해야 하는 이유는 무엇입니까?
단순한 String의 경우와 달리 CaseInsensitiveString은 프로그래머가 정의한 사용자 정의 클래스입니다. 이 클래스의 인스턴스는 지정된 생성자 "CaseInsensitiveString(...)"을 통해서만 생성될 수 있습니다. Java는 복사 생성자를 지원하지 않으므로 객체의 내부 상태를 초기화하려면 생성자를 명시적으로 호출해야 합니다.
질문 2: 문자열처럼 동작하도록 CaseInsensitiveString 적용
CaseInsensitiveString의 기본 동작에는 생성자를 사용해야 하며 내장 문자열의 단순화된 구문을 모방할 수 있는 잠재적인 방법이 있습니다. class.
확장:
확장 없음:
위 내용은 CaseInsensitiveString 인스턴스를 만드는 방법: 생성자 또는 정적 팩터리 메서드?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!