次のようなタイプが与えられます。
class Thing {
getInfo();
isRemoteThing();
getRemoteLocation();
}
メソッドは、true を返すgetRemoteLocation()場合にのみ定義済みの結果を持ちます。isRemoteThing()ほとんどの s がリモートではないことを考えるとThing、これは受け入れられる API ですか? 私が見るもう1つのオプションは、サブクラスを提供することですが、ユーザーは必要に応じてaをaRemoteThingにキャストする方法が必要です。これは、問題に間接的なレベルを追加するようです.ThingRemoteThing