JAVA/chapter22_generic
chapter06 : generic
GAWON
2023. 5. 30. 18:41
package org.joonzis.ex;
import java.util.Arrays;
class Basket<T>{ // 음식만 담을 수 있는 바구니
private T[] foods;
@SuppressWarnings("unchecked")
public Basket(int length) {
foods = (T[])(new Object[length]);
}
public void add(T food) { // setter
for(int i=0; i<foods.length; i++) {
if(foods[i] == null) {
foods[i] = food;
break;
}
}
}
public T[] getFoods() {
return foods;
}
}
class Food{}
class Apple extends Food{}
class Banana extends Food{}
class Bread extends Food{}
class Computer{}
public class Ex06_generic {
public static void main(String[] args) {
Basket<Food> basket = new Basket<>(5);
basket.add(new Apple());
basket.add(new Banana());
basket.add(new Bread());
//basket.add(new Computer());
//Food food = new Computer();
System.out.println(Arrays.toString(basket.getFoods()));
}
}