2017-05-19 18 views
-1

私はクラスXを持っているし、私の内部クラスYIでX という変数をyローカルおよびグローバル変数(Java)の

という変数を持っている私が欲しい:X = Y

私はゲッターメソッドを作りましたYとXについてはエラーが発生します: 非静的メソッド 'getY()'は静的コンテキストから参照できません。

私はgetX()静的でも最終的にも設定していません。私もそれを両方の方法で試してみましたが、うまくいきません。

EDIT:

public class X { 
    Variable v = new Variable(); 
    [... here is something done with v] 

    class Y { 
     Variable v_new = v; 
     [works with v] 

    } 

    v = v_new; // ??? 
} 
+0

あなたは私たちにいくつかのコードを表示してくださいすることができますか? – dingalapadum

+0

"_... **非静的**メソッド_" 'new'キーワードを使ってクラスXのインスタンスを作成するだけです。次に、そのような非静的メソッドにアクセスできます。 – KarelG

+0

あなたはx = yかX = Yですか? –

答えて

1

あなたの内部クラスYがクラスにアクセスすることができますXv変数なので、変数v_newとしてそれを再宣言する必要はありません...
あなたは、その後、public getterメソッドを使用する必要がある場合Yのインスタンスを通じて参照してください。このような

何か:

public class X { 
    Variable v = new Variable(); 
    [... here is something done with v] 

    class Y { 
    Variable v_new = v; 
    [works with v] 
    public Variable getV() { return v_new; } 
    } 

    Y y = new Y(); 
    v = y.getV(); 
} 
関連する問題