1

私はOOPプログラミングを始めているので、この問題があります。閉じたいこのクラスによって呼び出された他のクラスから1つのクラスを閉じたいです。

元:

クラスプリンシパルはクラスメニューを呼び出し、メニュー内でプリンシパルを閉じます

//Im inside of Principal

Menu mnu = new Menu();

//Now im inside of Menu

public void closePrincipal(){

principal.close();
}
4

3 に答える 3

4

プリンシパルクラスへの参照をメニューに渡すことができます。

//プリンシパルで

Menu mnu = new Menu(this);

Menuクラスでそのコンストラクターを定義する必要があります。

class Menu{
    private Principal principal;

    public Menu(Principal principal){
      this.principal = principal;
    }
...
}

したがって、メニューで使用する場合は、それを実行するだけです。

principal.close();
于 2012-06-19T13:58:31.630 に答える
0

「クラスプリンシパルのコード内にいる」と言うときは、「クラスプリンシパルに基づいて変数を作成し、その変数に対していくつかのコードを実行している」と考えることができます。

定義(「クラス」)を特定のオブジェクトに変換しました。

于 2012-06-19T14:03:30.550 に答える
0

メニューを作成し、プリンシパルを渡します

Menu mnu = new Menu(this);

メニュー内:

private Principal principal;

public Menu(Principal principal) {
    this.principal = principal;
}

//You can close the menu's principal any time by calling this...
public void closePrincipal() {
    principal.close();
}

この方法でプリンシパルを閉じることができます

mnu.closePrincipal()

または、メニューのコンストラクタで閉じます。

于 2012-06-19T14:04:24.967 に答える