簡體   English   中英

如何從班級獲取私人會員的信息?

[英]How to get info from class to private member?

我正在編寫一個具有多個類的系統。 有一個類將另一個類的實例存儲為私有字段。 第二類需要了解有關第一類私有字段的信息。 能做到嗎?

編輯:我試圖做一個“房子”; 這包括房間和人

我的組織方式是Room類中的People類的實例。 但是,存儲在房間中的房間號需要每個People實例知道。 那么如何從Room獲取此信息? 從更廣泛的意義上講,我如何才能從一個類的私有字段到另一個存儲為該類的私有字段的類的實例中獲取信息。

通常,您希望對代碼進行結構設計,以使對象不了解其封裝器,從而避免產生意粉代碼和循環依賴性,因此也許可以重新考慮設計。 但是,如果一個房間要知道人,而人們要知道他們所處的房間,那么直接的方法就是讓這兩個對象之外的代碼構造它們:

public class House {
    private final Room room1;
    private final Room room2;

    public House() {
        Room room1 = new Room();
        Room room2 = new Room();

        People group1 = new People();
        People group2 = new People();

        group1.setRoom(room1);
        group2.setRoom(room2);

        this.room1 = room1;
        this.room2 = room2;
    }
}

public class People {
    private final Room room;

    public People(Room room) {
        this.room = room;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM