変更が許可されていない外部 API からのサービスが返されます
MyClass instance = ServiceUtil.getThing();
この返されたクラスを拡張し、メソッドを追加/オーバーライドしますが、他のメソッド、たとえば 150 メソッドはそのままにします。
private class MyWrapperClass extends MyClass(){
public MyWrapperClass(){super();}
@Override public String toString(){ return "Blocked toString"; }
}
返された MyClass インスタンスから新しく特定されたサブタイプにこの「キャスト」を強制する方法はありますか??
注: コンストラクターを作成し、元のオブジェクトを渡し、ラップされたオブジェクトを呼び出すために 150 個のメソッドをコピーして実装する必要があるというアプローチは提案しないでください。