일부 오래된 코드를 리팩토링하고 문자열 상수를 포함하는 클래스 "태그"를 찾으십시오. 대부분의 XML 태그는 일부 XML-Parser-Handlers에서 사용됩니다. 또한 데이터를 직렬화하기도합니다. 공백으로 정의됩니다.리플렉션에 의한 초기화 문자열 상수
public static String PROXY, NAME, X, Y, KEY, ... CODES;
이 당신의 의견에 의미가 있습니까 :static { Field[] fields = Tags.class.getFields(); for (int i = 0; i < fields.length; ++i) { try { // init field by its lowercased name String value = fields[i].getName().toLowerCase(); fields[i].set(null, value); } catch (Exception e) { // exception should not occur, because only strings over here. e.printStackTrace(); } } }
및
자신의 이름으로 초기화? 장점 : 한 곳에서- 모든 태그 이름 & 값 (아무 잘못 입력) IDE 자동 완성에 의해
- 지원 사이
- 보장 대응
단점 입력 :
- 을 실제 상수가 아닙니다 (최종적이 아님)
- 가독성 - 단지 등 "이름은"더 간단 할 문자열 리터럴 "프록시"를 사용하는
- 반사에 의해 초기화 처리 시간을 소모 - 지연 시작 시간
그래서를 - 유지 또는 리팩터링 하시겠습니까?
아마도 이것을 위해'enum'을 사용하려 할 것입니다. – Pshemo
소년 (Boy)은 ENUM 값과 비슷하게 들립니다. ENUM을 값으로 사용하는 방법을 알아내는 것이 어떻습니까? –