如何调用另一个类的变量。

时间:2013-02-11 18:21:33

标签: class variables methods call invoke

我在调用另一个类的变量时遇到问题。让我们说我们有class1和class2,而class2有一个类似的方法:

public Class2{

public void method2 (Element ele, Grammar utterance, String user) {

String speech =................ 

         }
   }

我的目的是获取这个“语音”变量并将其传递给class1。关于如何做到这一点的任何想法?

4 个答案:

答案 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大小约定。因此,当您为类命名时,请将其称为Class1ClassOne

答案 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