gpt4 book ai didi

java - 相互声明两个类

转载 作者:行者123 更新时间:2023-12-02 00:52:00 24 4
gpt4 key购买 nike

我正在 NetBeans 中编写一个应用程序。我有两个类 MyApp_View 和 MyApp_Functions。

MyApp_View 类是这样开始的

public class MyApp_View extends FrameView {
MyApp_Functions My_functions = new MyApp_Functions();

public MyApp_View(SingleFrameApplication app) {
super(app);

在 MyApp_Functions 中我有
MyApp_View my_view = new MyApp_View(null);

我想从 MyApp_Functions 访问 MyApp_View 中的公共(public)变量,并从 View 中访问函数中的公共(public)方法,但没有成功。

这可行吗?又如何?

编辑:从我得到的答案来看,我认为最好澄清一下。

如果我在 MyApp_Functions 中声明 MyApp_View 或在 MyApp_View 中声明 MyApp_Functions,它会按预期工作。但我无法从另一个类访问两个类中的公共(public)内容。显然我只能访问我声明的内容。

如果我尝试在 MyApp_Functions 中声明 MyApp_View 并在 MyApp_View 中声明 MyApp_Functions ,它们可以正常编译。但我在启动时收到空异常错误。

再次。比较容易理解吗?这可行吗?如何?

最佳答案

您需要将引用从一个传递到另一个。最基本的是,它将涉及将第二行更改为:

MyApp_Functions My_functions = new MyApp_Functions(this);

并向 MyApp_functions 添加适当的构造函数,将引用“保存”在变量中,然后您可以在需要从 MyApp_View 访问某些内容时使用该变量。

最终,您想知道这种关系是否真的有必要,也许需要重新构建系统以删除它们。

关于java - 相互声明两个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2604675/

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