簡體   English   中英

Java內部類導入到Scala項目

[英]Java inner class import to Scala project

我想將Java內部類導入Scala項目。 無法編譯的代碼如下所示:

import pac.Obj
import pac.Obj.Inner.Inner2

object Sample {
    def main(args: Array[String]): Unit = {            
        var o = new Obj()
        Inner2 i2 = o.getInner().addInner2("some text")
    }
}

Scala編譯器無法識別第二次導入。 這是為什么? 在Java中,此構造工作正常。

如果Inner類是static它確實可以工作。

如果不是,那么您就不走運了(但是您真的需要嗎?)。 但是您可以使用帶有#分隔符的名稱,如下所示:

var inner = outer.getInner : Outer#Inner

在任何情況下, Inner2 i2在Scala中都是非法的,並且val i2 = o.getInner().addInner2("some text")可以正常工作。

據尤利安·德拉戈斯(Iulian Dragos) 所知

確實沒有導入Outer#Inner的語法。

鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM