这是我发现很难研究的东西,因为它需要一些解释。
我基本上想了解在其他物体周围移动物体的最佳方式并跟踪所有物体的位置。请允许我解释..
让我们假设我们正在创建一个 Person 类和一个 Park 类。park 类有一堆玩具和游乐设施供人玩。这些可能是 Slide 类、SeeSaw 类等。但是假设我们的程序需要始终跟踪 Person 对象的位置。如果他们在幻灯片上,我们将要询问班级他们的位置。例如...
//location could be set in the person whenever we move them..
person.setLocation(slide);
//now getLocation could return the object they are on (slide, seesaw, ect)
person.getLocation();
但是现在假设我想弄清楚在任何给定时间谁在公园中的 Slide 对象上。它会是这样的......
slide.getOccupants(); // could return the objects that are on the slide (Persons)
但是现在这意味着当人在公园中从一个对象移动到另一个对象时。我不得不说类似...
person.setLocation(seeSaw);
slide.removeOccupant(person);
seeSaw.addOccupant(person);
//this would get annoying and scary to do everytime a person moves...
那么创建一种方法来处理所有这些变化是要走的路吗?例如,每次一个人移动时,它都可以调用此代码......
//person being who you're moving and the ride being where you're moving them to..
public void move(Person person, Ride ride){
person.getLocation().removeOccupant(person);
person.setLocation(ride);
person.getLocation().addOccupant(person);
}
我不禁觉得有一种更好的方法可以做到这一点,因为它感觉在更大范围内变得混乱。也许我想得太多了,但我很想知道这方面的任何最佳实践或设计。
梵蒂冈之花
翻阅古今
繁华开满天机
相关分类