728x90
아래 2개의 클래스파일 작성하고, 메인에서 아래와 같은 실행결과가 나오도록 코딩하시오.
Container1<K,V> 클래스
멤버변수
private ? key
private ? val
멤버함수
생성자 구현
getter, setter
Container1Example1(실행클래스)
실행화면
결과
<String, String>으로 객체 생성 후 저장 값 불러오기
이름 : 김민재
직업 : 축구선수
<String, Integer>으로 객체 생성 후 저장값 불러오기
이름 : 박민주
나이 : 21
코드
class Container1<K, V> {
private K key;
private V val;
public Container1() {
}
public Container1(K key, V val) {
this.key = key;
this.val = val;
}
public void setData(K key, V val) {
this.key = key;
this.val = val;
}
public K getData() {
return key; // 어차피 key가 K 타입이라 변환 불필요
}
public V getKey() {
return val;
}
}
public class ContainerExample1 {
public static void main(String[] args) {
System.out.println("<String, String>으로 객체 생성 후 저장 값 불러오기");
Container1<String, String> sc = new Container1<>(); // 생성할 때 바로 넣어도 될 거 같은데
sc.setData("김민재", "축구선수");
System.out.println("이름 : " + sc.getData());
System.out.println("직업 : " + sc.getKey());
System.out.println("<String, Integer>으로 객체 생성 후 저장 값 불러오기");
Container1<String, Integer> ic = new Container1<>("박민주",21); // 생성할 때 바로 넣어도 될 거 같은데
//ic.setData("박민주", 21);
System.out.println("이름 : " + ic.getData());
System.out.println("직업 : " + ic.getKey());
}
}
한 번은 set 함수, 한 번은 생성자를 이용하여 값을 넣어주었다. 사실 set을 할 때 따로따로 하나씩 해주는 게 맞지만 간단한 문제여서 이렇게도 풀어보았다.
728x90
'Java' 카테고리의 다른 글
| [Java] 제네릭 클래스 예제 (20-4) (0) | 2023.09.07 |
|---|---|
| [Java] 제네릭 클래스 예제 (20-3) (0) | 2023.09.07 |
| [Java] 제네릭 클래스 예제 (20-1) (0) | 2023.09.07 |
| [Java] 제네릭 클래스 예제 (검토 필요) (0) | 2023.09.02 |
| [Java] 컬렉션과 제네릭 예제 (Vector,ArrayList,HashMap) (0) | 2023.09.02 |