gpt4 book ai didi

java - 如何从 Java 中的另一个类获取类的特定实例?

转载 作者:搜寻专家 更新时间:2023-10-31 08:23:37 27 4
gpt4 key购买 nike

我使用 main 方法创建了以下类,它创建了 Application 的新实例和 ApplicationModel 的实例,此特定 Application 的 ApplicationViewApplicationController

public class Application
{

// Variables

private ApplicationSettings settings;
private ApplicationModel model;
private ApplicationView view;
private ApplicationController controller;

// Constructor

public Application()
{
settings = new ApplicationSettings();
model = new ApplicationModel();
view = new ApplicationView(model);
controller = new ApplicationController();
}

// Main method

public static void main(String[] args)
{
Application application = new Application();
}

// Getters for settings, model, view, controller for instance of Application

}

我知道,Application 永远只有一个唯一的实例。

我想在我的 ApplicationModelApplicationViewApplicationController 类中获取这个特定实例。

这怎么可能?

最佳答案

我会在 Application 类上使用单例。

放置一个public static 方法来返回您唯一的应用程序实例。

public class Application
{
private Application() { } // make your constructor private, so the only war
// to access "application" is through singleton pattern

private static Application _app;

public static Application getSharedApplication()
{
if (_app == null)
_app = new Application();
return _app;
}
}

您可以阅读有关单例设计模式的更多信息 here .

每次您需要唯一的 Application 实例时,您需要:

Application app = Application.getSharedApplication();

关于java - 如何从 Java 中的另一个类获取类的特定实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11987123/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com