は、私は、変数あなたは新しい変数を宣言することなくJavaのオブジェクトをダウンキャストできますか?
O xyz = new E();
が、私はxyz.method()を呼び出した場合、その後、私は唯一のクラスOの方法ではなく、E年代にそれらを呼び出すことができますを宣言
class O has a child E
ような何かをしようとしていましたので、私はそれをダウンキャストすることができます
私の質問は - 新しい変数を宣言することなくこれを行うことができますか?ような何か:
O xyz = new E();
xyz = (E) xyz;
、今私は
Eのメソッドを呼び出すために)(xyz.method使用することができますは、Javaでこれを行うにはそこに方法は何ですか?
@Leonが指摘しているように、後で同じスコープ内で 'xyz'を' E'型にする必要がある場合は、 'O xyz = new E()'を書くことは決してありませんが、 E xyz = new E() 'である。しかし、あなたの実際のコードはこの例よりも難しいと思います。 – Thilo