type
という名前のフィールド/メンバーを含むJava(既にこのクラスはX
と呼ばれています)で書かれた既存のクラスがあります。Scalaから "type"という名前のJavaオブジェクトのフィールドにアクセスする方法
タイプX
のオブジェクトを作成し、そのオブジェクトのtype
メンバーにアクセスするScalaクラス/オブジェクトを作成します。
しかし、type
はScalaのキーワードです。これは機能しません。 Eclipseのエラーメッセージは次のとおりです:identifier expected but 'type' found.
質問:名前を付けずにそのフィールドにアクセスできますか?
作業例:
Javaクラス:
public class X {
public final int type = 0;
}
スカーラアプリケーション:
object Playground extends App {
val x : X = new X();
System.out.println(x.type); // This does not work!
}
ありがとう!フィールドは元のアプリケーションでは最終的なものです(質問を編集したばかりです)。ゲッターは意図的に作成しませんでしたが、良いアイデアです! –
私は 'Getter'sのどちらか、あまりにも冗長で好きではありません。 'static'変数の' @ Getter'は素晴らしいとは言えません。 – prayagupd