把一个非静态变量放到java中的静态方法中

时间:2017-03-30 10:03:00

标签: java oop

我有一个静态的方法

 public static void method1(){}

我希望在其中放入一个非静态变量并通过setVariable访问它...这样做是否可以接受?

示例

private String var;

public setVariable(String var){
    this.var = var;
}

public static void method1(){
    System.out.println(var):
}

1 个答案:

答案 0 :(得分:0)

没有。但是,您可以在静态对象或作为参数获得的对象上调用setVariable(来自静态上下文)。这两个都有效:

public static MyObj staticObj = new MyObj();

public static void myStaticMethod(MyObj obj) {
    obj.setVariable("newVal");
    staticObj.setVariable("newVal");
}