Okですので、何年も後にJavaを再訪しています。次のスニペットでエラーが発生したことがわかったときにランダムプログラムを試していました。誰かが私にこれを解決する方法の頭を与えることができますか?私は、静的メソッドは非静的変数にアクセスすることはできませんが、私はそれのためのインスタンスを作成正しいことを知っている?また、私は他のいくつかの質問を読んで頭を上げていないので、私を助けてください。 x
は、それがphone
クラスのインスタンスを指定せずにアクセスすることはできません静的変数ではないのでJava - 静的でないフィールドへの静的参照を行うことができません。
phone xy = new phone();
int y = xy.x;
:あなたはおそらく、あなたが作成したインスタンスのインスタンス変数にアクセスすることを目的と
import java.io.*;
public class phone
{
int x=6;
int getx()//I also tried using this function but everything in vain
{
return x;
}
}
public class Testing_inheritance extends phone
{
public static void main (String args[])throws IOException
{
phone xy=new phone();
int y=phone.x;
y+=10;
System.out.println("The value of x is " +y);
}
}
は 'int型のy = phone.x;'おそらくべきである 'int型のy = xy.x;'。 – assylias
[JAVAは非静的フィールドへの静的参照を作成できません](http://stackoverflow.com/questions/19482739/java-cannot-make-a-static-reference-to-non-static-field) – dhS
次回はコンソールのアウトプットを取り付けてください。 –