所以我有一個包含“瓷磚”列表的“世界”對象。我還有一個“島”對象,其中包含來自“世界”“瓷磚”對象列表中的某些“瓷磚”。出于外部目的,我想將世界和島嶼保留為對象/類。我希望能夠更改世界列表中圖塊的值,并在圖塊類中觀察到這些更改,反之亦然?;旧衔蚁胍篶lass World { List<Tile> tiles;}class Islands { // ref here is not syntax List<ref Tile> tiles;}但是ref在列表中不允許作為類型參數。我可以通過某種方式實現此行為,同時使它們盡可能接近對象/類并且沒有重復的圖塊。
1 回答

catspeake
TA貢獻1111條經驗 獲得超0個贊
不是 100% 清楚您的要求。但是,如果您想共享圖塊,那么World
和Island
引用都會自動看到這些圖塊值的變化,因為它們正在共享實例(必須是類而不是結構)。雖然這是被動的。如果您需要在這些更改發生時發生某些事情(例如,告訴World
或Island
查看和注意),那么實現一個在屬性更改時引發的事件。
如果你需要完全替換一個 tile 并想觀察那個變化,那么就實現一個間接層;例如,TileReference
具有Tile
屬性的 a。當該屬性發生變化時,您可以引發一個事件,處理程序可以觀察到全新的磁貼。
- 1 回答
- 0 關注
- 98 瀏覽
添加回答
舉報
0/150
提交
取消