我正在为 Java 编程类编写文本冒险游戏。我正在使用abstract
每个房间将继承和配置的父房间类设置房间。
对于出口,房间只会调用一个.addExit()
方法并传递一个出口对象。游戏应该只有每个房间的一个实例。退出对象应该有一个 target 字段,指向在构造函数中初始化的游戏房间之一。
我的问题是我不知道如何将退出构造函数传递给预先存在的房间引用而不是新的房间对象。在我看来,有两种可能的方式:
- 直接向出口构造函数传递对房间实例的引用。
- 有一个静态类来跟踪所有房间实例,并具有从字符串名称或类等返回实例的方法。
然后将退出对象的构造函数传递给标识目标房间的方法,例如唯一的字符串名称,该对象然后构造函数用于调用返回房间实例的静态类方法之一。
我不确定哪个是最好的选择,如何实现任何一个选项,或者是否有更好的方法。