あなたが私の問題で私を助けることができるかどうか疑問に思っています。これはおそらく、検索する適切なキーワードがわからないことが原因です。
これは宿題ではなく、匿名化されただけです...
私はインターフェースとたくさんの実装クラスを持っています:
interface Fruit
Banana implements Fruit
Apple implements Fruit
....
Fruitユーティリティクラスがあります。これは、あらゆる種類の果物を取り、それをスライスする方法です。
public static Fruit[] slice(Fruit f, int pieces)
メソッドに渡すFruitと同じタイプのFruit配列を宣言するにはどうすればよいですか?
つまり、どのように自動化できますか?
Fruit[] a = new Apple[pieces];
アップルをあげたら?
。
編集:説明
私はこのようなコードを持っています:
Fruit a = new Apple();
Fruit b = new Banana();
Fruit[] slices1 = FruitUtil.slice(a, 3); //slices1 should be an Apple
Fruit[] slices2 = FruitUtil.slice(b, 3); //slices2 should be a Banana
Fruit newApple = FruitUtil.copy(a); //newApple should be an Apple
引数で渡したものと同じタイプのFruitを作成するようにslice(Fruit f、intスライス)またはcopy(Fruit f)メソッドを作成するにはどうすればよいですか(各タイプのメソッドをオーバーライドしたり、instanceofチェックを実行したりする必要はありません) )。