10을 객체화 하면 매개변수만 다른 여러 함수 안만들어도 됌
예전엔 이렇게 수동으로 박싱 해주었음
=> 자바5부터 자동 박싱,언박싱 해줌
package org.example;
//code.oa.gg/java8/1350
// 문제 : 제너릭을 사용해서 중복을 제거해주세요.
class Main {
public static void main(String[] args) {
Int저장소 a저장소1 = new Int저장소();
a저장소1.setData(30);
int a = a저장소1.getData();
System.out.println(a);
Double저장소 a저장소2 = new Double저장소();
a저장소2.setData(5.5);
double b = a저장소2.getData();
System.out.println(b);
사과저장소 a저장소3 = new 사과저장소();
a저장소3.setData(new 사과());
사과 c = a저장소3.getData();
System.out.println(c);
}
}
class Int저장소 {
Object data;
int getData() {
return (int)data;
}
void setData(Object inputedData) {
this.data = inputedData;
}
}
class Double저장소 {
Object data;
double getData() {
return (double)data;
}
void setData(Object inputedData) {
this.data = inputedData;
}
}
class 사과 {
}
class 사과저장소 {
Object data;
사과 getData() {
return (사과)data;
}
void setData(Object inputedData) {
this.data = inputedData;
}
}
object 코드-> 데이터를 꺼낼때마다 형변환 해야됌
-> 형변환 없애고 싶음 타입이 다른 매개변수 처리할땐 제네릭 함수 활용
class 저장소<T> {
Object data;
T getData() {
return (T)data;
}
void setData(T inputedData) {
this.data = inputedData;
}
}