源文件如下
public class StringTest1{
public static void main(String[]args){
long start=System.currentTimeMillis();
//System.out.println(start);
for(int i=0;i<10000;i++){
String s="This is a"+"long test string for"+"different jdk performance"+"testing";
}
long end=System.currentTimeMillis();
System.out.println("Directly string contact:"+(end-start)); 
long b=System.currentTimeMillis();
for(int j=0;j<10000;j++){
StringBuffer buffer=new StringBuffer();
buffer.append("This is a");
buffer.append("long test string for");
buffer.append("different JDK performance");
buffer.append("testing");
String ss=buffer.toString();
}
long a=System.currentTimeMillis();
System.out.println("StringBuffer contact:"+(a-b));
}
}
D:\zjh\601>java -version:1.2 StringTest1
Unable to locate JRE meeting specification "1.2"D:\zjh\601>java -version:1.2.2 StringTest1
Unable to locate JRE meeting specification "1.2.2"D:\zjh\601>java -version:1.1 StringTest1
Unable to locate JRE meeting specification "1.1"D:\zjh\601>java -version:1.3 StringTest1
Unable to locate JRE meeting specification "1.3"D:\zjh\601>java -version:1.4 StringTest1
Exception in thread "main" java.lang.UnsupportedClassVersionError: StringTest1 (
Unsupported major.minor version 49.0)
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
3)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)D:\zjh\601>

解决方案 »

  1.   

    什么意思,那你javac用的哪个来编译的??
      

  2.   

    编译的javac 和运行的java版本不同
      

  3.   

    C:\sd601\java>java -version:1.5 HelloWorld
    Hello worldC:\sd601\java>java -version:1.4 HelloWorld
    Unable to locate JRE meeting specification "1.4"C:\sd601\java>
    以前用过,这个命令肯定是可以的,不知道那里出了问题了,
    也不是编译的javac和运行java版本不同的原因.
      

  4.   

    C:\sd601\java>javac -source 1.4 HelloWorld.java是这个命令,记起来了