<分区>
我的一个 friend 正在谈论这些关于对象状态转换的设计技术(他是 Java 大师,顺便说一句),执行时没有 boolean myState
成员,而是声明 myState
成员作为实现与“所有者”相同的接口(interface)的对象。
好吧,我说得太隐晦了,所以你可以找到讨论here ,带有代码示例。
就我个人而言,我对这种方法感到很兴奋,因为我的 friend 向我解释了它背后的哲学;从设计的角度来看,我也认为它非常连贯。顺便说一句,我的担忧主要是性能和内存使用,因为编译时和运行时优化可能会进入游戏。由于我不了解 JIT 编译器和 JVM 内部结构,所以我很想有更广泛的见解。
你在想什么?