2010-04-08 6 views
1

JVM 1.4에서 1.5로 전환하면 릴리스 정보마다 성능상의 이점이 있습니다. http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html#performance1.5에서 Java 1.4 클래스 성능 JVM

우리는 1.5 JVM에서 실행되는 Java 1.4 컴파일 된 클래스를 가지고 있는데,이 클래스는 1.4를 사용하여 컴파일 되었기 때문에 성능이 저하 될까요?

+0

이 SO 스레드를 확인하는 것이 좋습니다. http://stackoverflow.com/questions/93049/are-java-6s-performance-improvements-in-the-jdk-jvm-or-both (특히 응답 Tom Hawtin) – mindas

답변

2

이러한 기능 중 많은 부분이 "구문 설탕"입니다. 언어에 새로운 기능이 있음을 의미하지만 동일한 바이트 코드로 컴파일됩니다. 따라서 성능면에서 어려움을 겪지 않아야합니다. 업데이트 된 VM에서 동일한 바이트 코드입니다.

는 "J2SE 5.0는 Java 2 플랫폼의 이전 버전과 강력하게 호환됩니다. 거의 모든 기존 프로그램 이 수정없이 J2SE 5.0에서 실행해야합니다. 그러나 일부 작은 잠재적 인 소스 및 바이너리 호환성이있다 드문 경우가있는 JRE 및 JDK 의 경우 및 "코너 사례"여기에 문서화하고있는 내용은 입니다. - 일/오라클은

http://java.sun.com/j2se/1.5.0/compatibility.html#incompatibilities

또한, 귀하의 1.4 클래스를 코딩 사람에 따라, 그들은 특정 VM/GC 구현의 친밀한 지식을했을 수 있습니다 그에 최적화. 가능성은 없지만 누가 알습니까.
무언가를 수행하는 가장 좋은 방법은 & 프로파일을 실행하는 것입니다. "측정, 추측하지 마라."

0

StringBuffer 클래스 대신 StringBuilder 클래스를 사용할 수 있기 때문에 실제로 문자열 연산이 1.5 용으로 컴파일 된 클래스에서 더 빠릅니다. StringBuilder는 1.5에서 도입 된 StringBuffer의 비동기 버전입니다.