将类传递给自己的对象是不好的做法?
例如:
public class MainView extends SurfaceView {
Stack<GameObject> objs;
public MainView() {
new GameObject(this);
}
public void Add(GameObject obj) {
objs.push(obj)
}
public void Remove(GameObject obj) {
objs.pop(obj)
}
}
public class GameObject {
MainView parent;
int state;
public GameObject(MainView parent) {
this.parent = parent;
parent.Add(this);
}
public void doStuff() {
if(state == 1) {
new GameObject(parent);
}
else if(state == 2) {
parent.Remove(this);
}
}
}
我努力删除静态方法/变量。现在我必须将视图传递给它自己的对象。 这是一种不好的做法吗? 对象是逻辑还是SurfaceView包含所有逻辑?