我遇到了这个问题,因为我开始进行 OOP 编程我想从另一个类中关闭一个类,这些类已经被我想关闭的这个类调用。
前任:
班级校长调用班级菜单和内部菜单我关闭校长
//Im inside of Principal
Menu mnu = new Menu();
//Now im inside of Menu
public void closePrincipal(){
principal.close();
}
您可以将对主体类的引用传递给菜单;
// 在你的主体中
Menu mnu = new Menu(this);
您必须在 Menu 类中定义该构造函数:
class Menu{
private Principal principal;
public Menu(Principal principal){
this.principal = principal;
}
...
}
所以当你想在你的菜单中使用它时,就去做吧。
principal.close();
当您说“我在 Principal 类的代码中”时,您可能想认为“我已经基于 Class 主体创建了一个变量,并且我正在为该变量执行一些代码”。
您已将定义(“类”)转换为特定对象。
创建菜单并传递主体
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()
或者在菜单的构造函数中关闭它。