我现在正尝试使用
来使用Preference类首选项pfrOfThis = Preferences.userNodeForPackage(this)
收到错误:
“java.util.prefs.Preferences类中的方法userNodeForPackage不能应用于给定的类型; 必需:java.lang.Class 发现:myPac.MainApp 原因:实际参数myPac.MainApp无法通过方法调用转换转换为java.lang.Class
在构造函数中泄露这个“
MainApp在这里扩展了JFrame。它怎么不是一个类,不能在这里使用?
答案 0 :(得分:3)
“this”不是一个类,它是一个实例。尝试.getClass(),或使用MainApp.class。
答案 1 :(得分:3)
引用“this”是指一个对象。试试“this.getClass()”。
答案 2 :(得分:1)
D T,如果你看一下userNodeForPackage() doc,你会看到该方法的签名是:public static Preferences userNodeForPackage(Class<?> c)
这意味着它期望一个Class对象作为参数。我不知道你的程序做了什么,但从你提到的例外情况来看,你应该尝试:Preferences pfrOfThis = Preferences.userNodeForPackage(MainApp.class);