gpt4 book ai didi

java - 解决这个问题的方法?

转载 作者:行者123 更新时间:2023-11-30 04:33:38 26 4
gpt4 key购买 nike

有很多情况是我希望的

this=somevalue
Java 中允许使用

。例如。当我在父类(super class) Person 中并且我想将类型从 Person 修改为 Customer a像这样的作业

this=new Customer();

会有帮助的。想象一下,我有一个客户关系系统,其中保存了一份人员列表,我想根据他们的角色以不同的方式处理他们,但只允许一个主角色。因此,一个人可以是客户、员工、 friend 或......

所有人一开始都是人,但在任何时候他们都可以“晋升”为大师。以后可能想换Master角色。

即使有了工厂、依赖注入(inject)等,在不使用角色模式的情况下似乎仍然很难获得有效的解决方案。

什么是一个好的解决方法来获得所需的效果,即对象的引用可以由对象本身修改?我的第一个想法是拥有一个包装对象,将所有访问委托(delegate)给“真实对象”——真实对象满足实体的接口(interface),例如人。如果我知道想要从个人移动到客户,则包装器会交换“真实”对象。有没有类似的解决方案?

最佳答案

我想您想要实现的不仅仅是更改 this 指针,而是更改对实例的所有引用。因此,使用包装器的方法似乎是可行的方法。

关于java - 解决这个问题的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14002360/

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