我假设“对象”实际上是“类”。无论如何,答案是肯定的,您可以这样做。如果您希望所有这些都在同一项目中,则需要利用Scala / Java联合编译器。例如:
public interface Parser { public TokenIterator parse(InputStream is);}
然后在Scala中:
class ParserImpl extends Parser { def parse(is: InputStream) = ...}
最后,再次在Java中:
public class Consumer { public static void main(String[] args) { Parser p = new ParserImpl(); // just like a Java class! ... }}
如果所有这些源文件都在同一个项目中,那么您将需要使用以下命令调用来编译它们:
$ scalac *.scala *.java$ javac -classpath . *.java
第一个命令调用Scala /
Java联合编译器,该编译器将编译Scala源代码以及足以满足任何依赖关系的Java源代码。第二个命令使用类路径上最近编译的Scala类调用Java编译器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)