gpt4 book ai didi

java - java中的函数作为私有(private)成员变量

转载 作者:行者123 更新时间:2023-12-01 18:21:32 25 4
gpt4 key购买 nike

我正在设计一种大富翁游戏来练习我的 Java 技能。

我希望有一个“Space”类来代表游戏板上的空间。像这样的东西。

public class Space{

private Player [] occupants;
private String name;

public Space(String name){
this.name = name;
}

}

我来自Python背景,所以如果我这样做,我可能会使用某种“ Action ”函数来初始化每个空间,该函数对于每个路径都是唯一的。所以像这样。

class Space():
def __init__(self, name):
self.name = name
self.action = None

GO_SPACE = Space()
def GO_ACTION():
## do some processing
GO_SPACE.action = GO_ACTION

本质上是在运行时将函数分配给 Space 对象。我不记得我的语法是否正确,但希望我清楚我想要做什么。每个空间都有自己独特的功能来处理玩家落在其上时的 Action 。

我仍然愿意改变事物的架构方向,但是我如何在 Java 中做这样的事情呢?我承认,我对 Java 的了解有点生疏,但我的第一个想法是尝试以某种方式为私有(private)成员变量分配一个函数......这种方法离题了吗?我不记得 Java 是否有作为对象的函数或类似的东西。

最佳答案

我不明白为什么你需要它是动态的。为什么不这样做:

public abstract class Space {
// name etc.
public abstract void action();
}

public class GoSpace extends Space {
public void action() {
// collect 200 dollars
}
}

等等

关于java - java中的函数作为私有(private)成员变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27624989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com