728x90
아래 3개의 클래스 파일을 작성하고, 메인에서 아래와 같은 실행결과가 나오도록 코딩하시오.
Fruit<K, V> 클래스
멤버변수
private ? k;
private ? v;
멤버함수
생성자 구현
getter, setter
FruitBasket 클래스
멤버함수
static<K, V> Fruit<K, V> basketing(K k, V v)
*Fruit<K, V> 인스턴스 리턴
FruitBasketExample(실행클래스)
실행화면
결과
Fruit 바구니에 과일이 담겼네요.
과일명 : 사과
가격 : 1500
Fruit 바구니에 또 과일이 담겼네요.
과일명 : 귤
가격 : 700
Fruit 바구니에 또 과일이 담겼네요.
과일명 : 배
가격 : 3700
코드
class Fruit<K, V> {
private K k;
private V v;
public Fruit() {
// this.k=k;
// this.v=v;
}
public void setFruit(K k, V v) {
this.k = k;
this.v = v;
}
public K getK() {
return k;
}
public V getV() {
return v;
}
}
class FruitBasket {
static <K, V> Fruit<K, V> basketing(K k, V v) { // this.k=k;static에 this 불가 객체 생성 보장 아니라서
Fruit<K, V> basket = new Fruit<K, V>();
basket.setFruit(k, v);
return basket;
}
}
public class FruitBasketExample {
public static void main(String[] args) {
// Fruit<K,V> basket = new Fruit<>();
/*
* Fruit<String, Integer> appleBasket = new Fruit<>();
* appleBasket.setFruit("사과", 1500); System.out.println("Fruit 바구니에 과일이 담겼네요.");
* System.out.println("과일명: " + appleBasket.getK() + "\n" + "가격: " +
* appleBasket.getV());
*/
Fruit<String, Integer> appleBasket = new Fruit<>();
appleBasket = FruitBasket.basketing("사과", 1500);
System.out.println("Fruit 바구니에 과일이 담겼네요.");
System.out.println("과일명: " + appleBasket.getK() + "\n" + "가격: " + appleBasket.getV());
Fruit<String, Integer> mandarinBasket = new Fruit<>();
mandarinBasket = FruitBasket.basketing("귤", 700);
System.out.println("Fruit 바구니에 또 과일이 담겼네요."); // 구문 안 쪽으로 빼기
System.out.println("과일명: " + mandarinBasket.getK() + "\n" + "가격: " + mandarinBasket.getV());
Fruit<String, Integer> pearBasket = new Fruit<>();
pearBasket = FruitBasket.basketing("배", 3700);
System.out.println("Fruit 바구니에 또 과일이 담겼네요.");
System.out.println("과일명: " + pearBasket.getK() + "\n" + "가격: " + pearBasket.getV());
}
}728x90
'Java' 카테고리의 다른 글
| [Java] 자바 컬렉션 ArrayList (21-2) (0) | 2023.09.07 |
|---|---|
| [Java] 제네릭 클래스 예제 (21-1 수정 throw catch 학습 후 수정 필요) (2) | 2023.09.07 |
| [Java] 제네릭 클래스 예제 (20-4) (0) | 2023.09.07 |
| [Java] 제네릭 클래스 예제 (20-3) (0) | 2023.09.07 |
| [Java] 제네릭 클래스 예제 (20-2) (0) | 2023.09.07 |