如何在整个java类中使用变量

时间:2014-08-06 11:31:16

标签: java

我对java很新,我有两个问题!

首先,我如何使变量可用于整个java类? 这是我方法的一部分:

public void createID() {

 ObjectId Id = (ObjectId) documentClient.get("_id");
 StringID = clientId.toString();
}

我想在另一个方法中使用StringID,但它是null(当我在主类中创建公共StringID = null时)或者不知道。

我的另一个问题是,当我将createID()更改为

public String createID() {

 ObjectId Id = (ObjectId) documentCleint.get("_id");
 StringID = clientId.toString();
 return Id; 

}

它说该方法应该是无效的!我正在寻找一种从我的方法返回变量的方法。

有什么想法吗? 感谢

3 个答案:

答案 0 :(得分:3)

首先,为了定义类变量,您应该在类定义下定义它。例如

public class Example{

private int classVariable; // Variable to be reached from any method in class.

    private void someMethod(){
    }
}

在您的clientID方法中,您将返回类型指定为String,但您将返回objectId。我想你的意思是返回StringID变量。 我想,documentCleint.get("_id"); 应该是documentClient.get("_id");

您应该在纠正这些语法问题后尝试。

答案 1 :(得分:2)

问题1:

  

首先,我如何使变量可用于整个java类?

createID仅限于createID()方法的范围。为了利用全班,将它们移到顶部。 (实例成员)。

问题2:

  

它说该方法应该是无效的!

public **String** createID() {

 ObjectId **Id** = (ObjectId) documentCleint.get("_id");
 StringID = clientId.toString();
 return **Id**; 

}

这不是确切的错误。返回类型是mistamatch那里。该方法应返回String,但您将返回类型为Id的{​​{1}}。您可能想要返回ObjectId

答案 2 :(得分:0)

要在多个方法中使用变量,您需要使用全局变量,声明它只是在类中的任何方法之外声明它。

至于你问题的第二部分,它在我看来你没有返回一个字符串,因为id未被声明为字符串