有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将对象传递给swing GUI

我有5-6个GUI(独立的类),一个根据其功能打开另一个,每个GUI都包含一个对象,当从Book_GUI的座位选择菜单中单击一个按钮“Book”时,我会将这样的航班预订系统中的最后一个对象传递给我的GUI。爪哇

Passenger_GUI frameP = new Passenger_GUI(eco.seats[x][z].getMyPassenger());
frameP.setVisible(true);    
eco.seats[x][z].setBooked(true);

在乌龟。我有:

        private Passenger passenger_GUI;

稍后在构造函数中,在不初始化passenger_GUI的情况下,我将输入乘客对象分配给它:

public Passenger_GUI(Passenger myPassenger) {
    passenger_GUI = myPassenger;

一切正常没有错误。。。我有两个问题,我必须初始化第一个乘客界面,然后进行分配,还是没有必要? 第二个重要问题;我在Passenger_GU中对object myPassenger(eco.seats[x][z].myPassenger)所做的更改是否会保存在以前的GUI中Book_GUI.java我认为不是因为Passenger_GUI类没有返回值。。。还是我错了?我如何使我在对象上应用的更改保持稳定,并在^{中用于未来?(以前的GUI) 谢谢你抽出时间

以下是完整的课程: http://www.copypastecode.com/643018/ http://www.copypastecode.com/643022/


共 (1) 个答案

  1. # 1 楼答案

    1. 不,您可以在构造函数中初始化passenger_GUI
    2. 这些变化应该持续下去。由于您将Object而不是原语传递给Passenger_GUI构造函数,因此Java实际上会传递对该Passenger对象的引用。您的Passenger_GUI.passenger_GUI字段应该引用与eco.seats[x][z].getMyPassenger()相同的对象(实际上,内存中的相同位置),因此从Passenger_GUI内对该对象所做的任何更改也应该在Book_GUI中可见