我在调用另一个类的变量时遇到问题。让我们说我们有class1和class2,而class2有一个类似的方法:
public Class2{
public void method2 (Element ele, Grammar utterance, String user) {
String speech =................
}
}
我的目的是获取这个“语音”变量并将其传递给class1。关于如何做到这一点的任何想法?
答案 0 :(得分:0)
您可以将void method2(...)更改为public String method2(...)并返回语音。然后在你的第一堂课中你有一个class2的实例,并且调用class2.method2(...)会给class 1语音变量
答案 1 :(得分:0)
您必须在其他Class1中拥有Class2的实例,因此示例为:
Class1 mySpeech = new Class1();
现在,有权访问mySpeech
的对象可以访问包含的字符串变量,因为speech是一个公共变量。
mySpeech.speech
但最好为此创建getter / setter方法,可以使用eclipse快捷方式创建:
Sources->Generate Getters and Setters
同样,在命名类时,请使用大写作为第一个字母并调用camel大小约定。因此,当您为类命名时,请将其称为Class1
或ClassOne
。
答案 2 :(得分:0)
您必须在提供字符串的对象中具有某种公共可见性。然后将字符串从第一个对象传递到第二个对象,或者通过引用将对象传递给第二个对象(不太推荐)。
public FirstClass {
private String speech = "I am the first object!";
public String getSpeech() {
return speech;
}
}
public SecondClass {
private string speechCopy;
public void takeSpeech(string speechCopy) {
this.speechCopy = speechCopy + " (not really, I'm a copy!)";
}
}
从这里开始,您只需调用方法来调用所需的行为即可。您可以保留代码,但是将get / set方法添加到每个对象,以便它们可以传递变量和引用。
答案 3 :(得分:0)
-Declare before method:public static String speech - 初始化方法或输出:speech =“hi” -Call来自其他类(静态范围):Class1.speech