use*_*016 11 java design-patterns smalltalk
有没有办法将自己(这个)与Java中的其他对象交换?
在Smalltalk我们可以写
Object subclass:myClass [
"in my method I swap myself with someone else"
swapWith:anObject [
self become:anObject.
^nil
]
]
myClass subclass:subClass [
]
obj := myClass new.
obj swapWith:subClass new.
obj inspect.
Run Code Online (Sandbox Code Playgroud)
结果An instance of subClass显然是.
我需要在Java中做以下事情:
那么,简而言之,我如何在Java中实现self become: (someClass new:someParameters)?我可以使用一些已知的设计模式吗?