NumSenderImp.java是rmi中的一个文件。在编译他时出现如下问题:
Note:.\ss\NumSenderImp.java uses unchedked or unsafe operations.
源代码:
package ss;import java.rmi.server.*;
import java.util.*;
import java.rmi.*;/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class NumSenderImp
    extends UnicastRemoteObject implements NumSender,Runnable{
  public NumSenderImp() throws java.rmi.RemoteException{
    number=0;
    listeners=new Vector<NumListener>();
    event=new NumEvent();
    event.setSource(this);
  }
  public void addNumListener(NumListener l)throws java.rmi.RemoteException{
    listeners.add(l);
  }
  public void removeNumListener(NumListener l)throws java.rmi.RemoteException{
    listeners.remove(l);
  }  /**
   * fireEvent
   */
  private void fireEvent() {
    event.setNumber(this.number);
    Iterator it=listeners.iterator();
    while(it.hasNext()){
      try {
        ( (NumListener) it.next()).numChanged(event);
      }
      catch (RemoteException ex) {
        ex.printStackTrace();
      }
    }
  }  private Vector listeners;
  private int number;
  private NumEvent event;
  public void run() {
    while(true){
      try {
        Thread.sleep(2000);
      }
      catch (InterruptedException ex) {
      }
      this.number++;
      this.fireEvent();
    }
  }
}
请问各位有谁知道是什么原因。

解决方案 »

  1.   

    现又有如下问题:
    C:\Borland\JBuilder2005\jdk1.4\bin\javaw -classpath "D:\ss\classes;C:\Borland\JBuilder2005\jdk1.4\jre\lib\im\indicim.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\im\thaiim.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\dnsns.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\sunjce_provider.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\ldapsec.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\localedata.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\jsse.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\plugin.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\sunrsasign.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\charsets.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\rt.jar;C:\Borland\JBuilder2005\jdk1.4\jre\lib\jce.jar;C:\Borland\JBuilder2005\jdk1.4\jre\javaws\javaws.jar;C:\Borland\JBuilder2005\jdk1.4\lib\tools.jar;C:\Borland\JBuilder2005\jdk1.4\lib\dt.jar;C:\Borland\JBuilder2005\jdk1.4\lib\htmlconverter.jar"  -Djava.rmi.server.codebase=file:D:\ss\classes\ -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=97ea0f6150a6450:1230,suspend=y ss.NumServer 
    java.lang.UnsupportedClassVersionError: ss/NumServer (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:123)
    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)
    请问该如何解决呢?