如何从 Java 访问 JavaFX 1.3 静态类成员?
我想使用 Javafx 反射 API 从 Java 访问静态 JavaFX 类成员。
例如,JavaFX 代码:
public var thing;
class MyJavaFXClass {
}
Java 代码:
private Object getThing() {
FXClassType classType = FXContext.getInstance().findClass("mypackage.MyJavaFXClass");
// Get static member 'thing' from 'MyJavaFXClass'
// <Insert Code Here>
return thing;
}
访问“MyJavaFXClass.thing”需要什么 Java 代码?
注意:我使用的是 JavaFX 1.3 - 我不确定这里的反射 API 是否与早期的 JavaFX 版本不同。
I want to access a static JavaFX class member from Java using the Javafx reflection API.
E.g. JavaFX code:
public var thing;
class MyJavaFXClass {
}
Java code:
private Object getThing() {
FXClassType classType = FXContext.getInstance().findClass("mypackage.MyJavaFXClass");
// Get static member 'thing' from 'MyJavaFXClass'
// <Insert Code Here>
return thing;
}
What Java code do I need to access 'MyJavaFXClass.thing'?
Note: I am using JavaFX 1.3 - I'm not sure if the reflection API is different here to earlier JavaFX versions.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
或者如果您想要对象,而不是字符串。
or if you want the Object, not the String.
您的“MyJavaFXClass”应该实现一个接口 IF。
接口 IF 应该定义至少一种返回“var thing”类型的方法。
然后,您的“MyJavaFXClass”必须使用“class MyJavaFXClass extends IF”来实现该接口。
要从 Java 代码访问您的“事物”,首先将对象转换为 IF,然后调用该方法。
Your "MyJavaFXClass" should implement an interface IF.
The interface IF should define at least one method that returns the type of your "var thing".
Your "MyJavaFXClass" then must implement the interface using "class MyJavaFXClass extends IF".
To access your "thing" from Java code, first cast the Object to IF and then call the method.