좋은 프로그래밍 방법이라고 생각하기 때문에 모든 변수 (로컬 변수 또는 인스턴스 변수)를 final
변수에 한 번만 쓰도록 작성했습니다.try/catch를 사용한 최종 변수 할당
는 그러나, 나는 변수 할당이 예외를 던질 수있을 때 당신이 최종 변수 말했다 할 수없는 것을 알 수 :
final int x;
try {
x = Integer.parseInt("someinput");
}
catch(NumberFormatException e) {
x = 42; // Compiler error: The final local variable x may already have been assigned
}
임시 변수에 의존하지 않고 할 수있는 방법이 있나요? (또는 최종 수정자를위한 적절한 위치가 아닙니까?)
임시 변수없이이 작업을 수행 할 수 있을지 의심 스럽습니다. – NPE
'final int x = makeX();'틀림없이. (try-catch in function) –
JDK [여전히'tryParse']가 없다는 사실에 놀라움 (http://stackoverflow.com/questions/1486077/java-good-way-to-encapsulate-integer-parseint) . –