使用 set-get 方法更改对象的值

问题描述

.replace(/^((?:[\r\n]*[^\r\n]+)+)[\r\n]+$/,'$1')

我想使用这种方法更改用户的位置。如您所见,我有 Location 类及其构造函数。但我无法分配新位置。它不起作用旧位置停留。基本上,我的问题是如何使用旧对象的参数分配新对象而不是旧对象?


[\r\n]+$

这是我使用对象的主要部分。我该如何解决

解决方法

如果老位置不变,有两种可能,

  • 您并没有真正改变分配新位置对象的地址 到旧的位置对象
  • 您仍在使用旧位置的对象。

问题要么出在 setOldLocation() 上,要么出在旧位置对象的使用部分。

,

看返回stairUp方法,不知道为什么方法返回oldLocation。你应该知道从这个方法返回的“oldLocation”是传递给这个方法的局部变量

public Location stairUp(Location **oldLocation**,Room newRoom)

这将始终指向传递给方法的旧位置值。