Scala和Java方法的相互调用

在Scala中调用java的方法,很简单,直接导入传递参数就能够进行调用了.java

可是在Java中调用Scala的方法呢?测试

通过测试,也是很简答的,静态方法直接传递参数,就能够调用了,非静态的方法,使用对象也能够调用方法scala

具体以下:code

1.首先是静态方法对象

object ScalaObjectDemo extends  App {

    println("hello zhaojun i miss you very much");

    def say(name:String){
        println(name)
    }

    /**
      * 先去调用java方法
      * @return
      */
    def say3(): Int ={
        println("这里是scala的方法了")
        var tmp=JavaDemo.say2("4");
        println(tmp);
        tmp
    }
}

2. JAVA中调用Scala的方法
 class

public class JavaDemo {
    public static void main(String[] args) {
        ScalaObjectDemo.main(new String[]{});

        ScalaObjectDemo.say("zhaojun ");

        //测试反复的方法调用
        int say3 = ScalaObjectDemo.say3();
        System.out.println(say3);

    }
    public static int say2(String age){
        System.out.println("这里是java的static 方法了"+age);
        return Integer.parseInt(age);
    }
}

3.Scala中的非静态方法object

class ScalaClassDemo {

  def hi(name:String):Int={
    println(name)
    1
  }
}

4.Java中的调用方法

int zhaojun = new ScalaClassDemo().hi("zhaojun");
System.out.println(zhaojun);

通过测试所有能正常运行.static

相关文章
相关标签/搜索