Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是什么原因引起的;二进制运算符'=='&引用;第二类<;空类型>;?_Java_Netbeans - Fatal编程技术网

Java 是什么原因引起的;二进制运算符'=='&引用;第二类<;空类型>;?

Java 是什么原因引起的;二进制运算符'=='&引用;第二类<;空类型>;?,java,netbeans,Java,Netbeans,当我检查StoredCredential的实例是否为null时 if(storedCredential != null){ //do something } Netbeans 7.1显示以下警告: bad operand types for binary operator '==' first type: com.blah.dbcore.mypublic.beans.StoredCredential second type: <nulltype> Netbeans对

当我检查StoredCredential的实例是否为null时

if(storedCredential != null){
  //do something
}
Netbeans 7.1显示以下警告:

bad operand types for binary operator '=='
  first type:  com.blah.dbcore.mypublic.beans.StoredCredential
  second type: <nulltype>
Netbeans对此表达式没有问题


因为编译没有问题,所以我假设我将包含该类的.jar添加到库中的方式有问题。这是这个jar唯一的问题,这个.jar中没有其他类会给我这个问题。

Netbeans告诉您,在程序中,
storedCredential
不可能为空。这可能意味着您已经在该方法前面的
storedCredential
上调用了一个方法或访问了一个数据成员

我也遇到过这个问题。另外,当我试图将问题类的实例传递到接受对象作为参数的方法中时,我得到了以下错误:

required: String,Object
found: String,SomeClass
reason: actual argument SomeClass cannot be converted to Object by method invocation conversion
结果是编译器无法确定我的类的正确类型

我的类(我们称之为com.blah.lib.SomeClass)位于一个NB项目(我们称之为项目1)中,并在第三方jar中扩展了一个类,该jar是项目1的库

另一个NB项目(我们称之为项目2)依赖于项目1并使用com.blah.lib.SomeClass,但其libs中没有第三方jar,因此在编译项目2时,编译器无法确定com.blah.lib.SomeClass的完整继承

因此,解决方案是将第三方jar也添加到Project 2的库中


我知道这已经有年历史了,但我想我会发布这个答案,以防将来有人用谷歌搜索这个问题。

首先,你可能是指
netbeans 7.1
而不是
netbeans 1.7
。但是storedCredential的类型是什么?如果您的错误提到了运算符“|=”,那么一切都会很清楚,因为它只对数字和布尔值进行操作。@alegen Oops,是的,netbeans 7.1修复了它:P类型是storedCredential Extendes Bean,这是一个实现可序列化的对象,我认为没有什么特别之处。我确实注意到Bean类中有一个临时字段,但我不认为这会带来这种问题。我以前让Netbeans对java文件中实际编写的内容感到困惑,所以可能重新启动或只是让它消失?当一些看似不合逻辑的事情发生时,它总是像魔术一样对我起作用。在清除之前做备份。@predi我已经退出了Netbeans,清除了缓存并重新启动了它。问题仍然存在。我还发现,如果我键入
storedCredential.
Netbeans不会给出任何提示。哦,哇,我忘了这个问题仍然存在,但这确实是解决方案。谢谢
required: String,Object
found: String,SomeClass
reason: actual argument SomeClass cannot be converted to Object by method invocation conversion