从其他方法调用字符串时出现问题

时间:2012-02-03 10:12:31

标签: java

我声明了一个带有类的String,如下所示:

public static String nixprocessvalue;

我使用此方法将一些数据分配给字符串:

public static void GetStatsNix(String operation)
{

    String result = null;
    try {
        Runtime r = Runtime.getRuntime();                    
        Process p = r.exec("/bin/hostname");
        BufferedReader in =
        new BufferedReader(new InputStreamReader(p.getInputStream()));
        String inputLine;
        inputLine = in.readLine();

    }

2 个答案:

答案 0 :(得分:1)

对于您的问题,您应该集中精力处理重点,在您的情况下,您对相关变量所做的更改。

因为它不是范围的一般问题 - 请考虑这个简单的例子:

public class StaticTest {

    public static String s;

    public static void main(String[] args) {
        write();
        read();
    }

    static void write() {
        s = "Hello";
    }

    static void read() {
        System.out.println(s);
    }
}

静态变量以两种不同的方式编写和读取,这非常好。

问题是,为什么要声明所有内容static - 只是因为你从main做了所有事情,并且不想在java中创建对象实例是一个好主意还是有特殊原因?

答案 1 :(得分:0)

} catch (IOException e) {
    System.out.println(e);
}    public static void GetStatsNix(String operation)
{

这最后一行看起来很可疑,因为你的实际功能还没有关闭,但是启动了另一个方法定义(GetStatsNix(String operation))。

你确定,你没有放错括号吗?