ハロー仲間のプログラマー、キャスティング(?)未知のサブクラスの参照に知られているスーパークラスのオブジェクト
は、私は今のJavaプロジェクトに取り組んでいると私は未知のサブクラスに知られているスーパークラスをキャストしようとしています。
public void getShirtType(Person person) {
Clothing article; // Clothing is a superclass of different subclasses of Clothing
for(Clothing clothing : person.getClothing()) { // person.getClothing() returns List<Clothing>
if(clothing.hasSleeves()) { // hasSleeves() is boolean
article = ???;
break;
}
}
}
このコードは、袖と衣服の記事の最初のインスタンスを取得し、ループを終了します。
は、ここでは、コードです。
私は疑問符の場所に何を置くべきかわかりません。通常、私はちょうどarticle = (SleevedShirt) clothing;
のようなものを持つことができますが、その中に括弧の中に入ることができるSleevedShirtのほかに、さまざまなサブクラスがあります。
あなたの意見を教えてください。
また、私はほとんど初心者ですから、もしあなたがそれを提供したいのであれば、私のコードに関連した建設的な扇動性は気にしません。
'article =' clothing'なので 'article =' clothing'ですか?キャストは必要ありません。 – Andreas
それは簡単ですか?さて、私はそれを試してみましょう。ありがとう。 –