Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将状态传递给每个行为是否使其成为一个;“上帝客体”; 公共接口行为{ 公共字符串getName(); 公共R执行(D组件,S状态); }_Java_Design Patterns_God Object - Fatal编程技术网

Java 将状态传递给每个行为是否使其成为一个;“上帝客体”; 公共接口行为{ 公共字符串getName(); 公共R执行(D组件,S状态); }

Java 将状态传递给每个行为是否使其成为一个;“上帝客体”; 公共接口行为{ 公共字符串getName(); 公共R执行(D组件,S状态); },java,design-patterns,god-object,Java,Design Patterns,God Object,由于实施中的行为如此多样化,我担心国家将成为许多不同领域的上帝对象。对于那些只需要一部分状态而不是所有状态的行为来说,这似乎有点过头了。首先,这甚至是一个反模式,然后我将如何着手解决它 我已经考虑过让它的行为记录它在创造时需要的状态或片段,但我只是不确定那会是什么样子。此外,我考虑将state设置为一个存储区,其中所有字段都存储在一个键和值下。我唯一不喜欢的是在检索时强制转换对象。我认为另一个问题的答案也可能回答这个问题,我不熟悉Java。Result是众所周知的类型吗? public inte

由于实施中的行为如此多样化,我担心国家将成为许多不同领域的上帝对象。对于那些只需要一部分状态而不是所有状态的行为来说,这似乎有点过头了。首先,这甚至是一个反模式,然后我将如何着手解决它


我已经考虑过让它的行为记录它在创造时需要的状态或片段,但我只是不确定那会是什么样子。此外,我考虑将state设置为一个存储区,其中所有字段都存储在一个键和值下。我唯一不喜欢的是在检索时强制转换对象。

我认为另一个问题的答案也可能回答这个问题,我不熟悉Java。
Result
是众所周知的类型吗?
public interface Behaviour<D extends GameComponent, S,  R extends Result<S>> {

    public String getName();
        
    public R execute(D component, S state);
}