给定一些类型如下:
class Thing {
getInfo();
isRemoteThing();
getRemoteLocation();
}
如果返回 true ,该getRemoteLocation()
方法只有一个定义的结果。isRemoteThing()
鉴于大多数Thing
s 不是远程的,这是一个可接受的 API 吗?我看到的另一个选项是提供一个RemoteThing
子类,但是如果需要,用户需要一种将 a 强制转换为 a 的方法Thing
,RemoteThing
这似乎只是为问题增加了一定程度的间接性。