首页 新闻 会员 周边

求助!scala如何调用java静态方法

0
[已解决问题] 解决于 2020-05-08 20:13

求助!scala如何调用java静态方法?

比如:

public abstract class Person{

public static String name(){

return "张三";

}

}

public class Student extends Person{

}

像这样的我用Scala语言,如何通过子类Student调用父类的name?

shuai7boy的主页 shuai7boy | 菜鸟二级 | 园豆:225
提问于:2020-05-08 17:44
< >
分享
最佳答案
0

和Java自己调用没有什么区别啊。类名.方法名()

object Foo extends App {
  println("test java static: " + Test.name());
}
奖励园豆:5
。淑女范erり | 小虾三级 |园豆:961 | 2020-05-08 19:04

不好意思,刚才没表达清楚,我修改了下问题。请再帮忙看下

shuai7boy | 园豆:225 (菜鸟二级) | 2020-05-08 19:08

@shuai7boy: 这种情况直接调用父类的静态方法,即静态方法定义在哪儿,就使用哪个类。
scala是没有static这个概念的,所有的static都被处理为一种特殊的单例来对待的。

另外直接调用父类的静态方法也是合适的,因为静态方法本身就不应该依附于实例的状态,在Java里通过父类或者子类调用也是同样的效果,只是Java两种方式都允许。

。淑女范erり | 园豆:961 (小虾三级) | 2020-05-08 19:31

@。淑女范erり: 明白了,多谢

shuai7boy | 园豆:225 (菜鸟二级) | 2020-05-08 20:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册