静态函数当中使用非静态变量

在静态函数当中不是不能直接使用非静态的成员嘛,现在想调用,该怎么写?

你好,静态函数虽然不能直接调用非静态的成员变量,但是可以调用类的实例的非静态成员变量,代码如下

public class test {
static String a;

public static String getA(test test){
return test.a;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-17
那它就不应该是个静态函数
逻辑上就有问题。静态函数在类上调用,也就是说不需要实例化出对象就可以使用。非静态变量就是传说中的实例变量,需要先得到类的实例——对象,之后才能存在。本回答被提问者采纳
第2个回答  2011-11-18
弄个对象在用 二楼的好像弄反了
public class test {
String a;

public static String getA(test test){
return new test().a;
}
}
相似回答