Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法从静态上下文引用非静态方法setPrzechowaj(java.lang.String)_Java - Fatal编程技术网

无法从静态上下文引用非静态方法setPrzechowaj(java.lang.String)

无法从静态上下文引用非静态方法setPrzechowaj(java.lang.String),java,Java,可能重复: 嘿,我对JDialogForm有问题。我使用netbeans 6.8创建了它。JDialogForm下面有文本字段和按钮。这里有一些代码 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { String sciezka = jTextField1.getText(); if (scie

可能重复:

嘿,我对JDialogForm有问题。我使用netbeans 6.8创建了它。JDialogForm下面有文本字段和按钮。这里有一些代码

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       String sciezka = jTextField1.getText();
       if (sciezka.length() > 0)
       {
          Zmienne_pomocnicze.setPrzechowaj(sciezka);
       }
   }  
现在我想把字符串“sciezka”复制到我的主窗口,但如果我这样做

public class Zmienne_pomocnicze {

public String n;
public void setPrzechowaj (String neew)
{
   n = neew;
}
public String getPrzechowaj ()
{
   return n;
}

}
jButton1中出现错误:无法从静态上下文引用非静态方法setPrzechowaj(java.lang.String) 有什么想法吗

Zmienne_pomocnicze.setPrzechowaj(sciezka);
在这里,您直接通过类名调用一个方法,而不实例化该类。这要求方法是静态的,即:

public static void setPrzechowaj (String neew)
{
   n = neew;
}
但是您通常只想创建类的可重用实例,并对其调用方法,这样就不会在类的所有现有实例之间共享/应用此变量/行为

Zmienne_pomocnicze zp = new Zmienne_pomocnicze();
zp.setPrzechowaj(sciezka);

另请参见: