Java 使用动态代理在接口中获取方法名称(不实现)

Java 使用动态代理在接口中获取方法名称(不实现),java,scala,dynamic-proxy,Java,Scala,Dynamic Proxy,我有这样一个简单的界面 public interface Arithmatic { public long add(int num1, int num2) ; public long multiply(int num1, int num2) ; } val impl = Proxy.newProxyInstance( classOf[ Arithmatic].getClassLoader, classOf[ Arithmatic].getCl

我有这样一个简单的界面

public interface Arithmatic {

    public long add(int num1, int num2) ;

    public long multiply(int num1, int num2) ;

  }
val impl = Proxy.newProxyInstance(

      classOf[ Arithmatic].getClassLoader,
      classOf[ Arithmatic].getClasses,
      handler

    ).asInstanceOf[ Arithmatic]
我需要调用接口的方法名,而不使用java动态代理实现它。如何实现
调用处理程序
新代理实例

我必须使用scala在我的项目中完成这项任务

我的代理实例如下

public interface Arithmatic {

    public long add(int num1, int num2) ;

    public long multiply(int num1, int num2) ;

  }
val impl = Proxy.newProxyInstance(

      classOf[ Arithmatic].getClassLoader,
      classOf[ Arithmatic].getClasses,
      handler

    ).asInstanceOf[ Arithmatic]
就像在java中一样,我不能将其转换为Arithmatic。它给了我

Exception in thread "main" java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to Arithmatic

我如何解决这个问题?

也许这篇文章可以帮助您?

您永远不需要实现
接口来调用它。调用方不是实现者。