요구사항]
1. int 값 1개를 중심으로 그값을 조작(제어)하는 클래스를 설계하시오.
2. boolean 값 1개를 중심으로 그 값을 조작(제어)하는 클래스를 설계하시오.
3. String 값 1개를 중심으로 그 값을 조작(제어)하는 클래스를 설계하시오.
4. 모든 값형 -> 8개 클래스 설계
//1.
class WrapperInt{
private int data; <- 가장 중심이 되는 요소
public WrapperInt(int data){ <- 기본생성자
this.data = data;
}
public int getData(){
return data;
}
public void setData(int data){
this.data = data;
}
@Override
public String toString(){
return this.data +"";
}
}
//2.
class WrapperBoolean{
private boolean data; <- 가장 중심이 되는 요소
public WrapperBoolean(boolean data){ <- 기본생성자
this.data = data;
}
public boolean getData(){
return data;
}
public void setData(boolean data){
this.data = data;
}
@Override
public String toString(){
return this.data +"";
}
}
//3.
class WrapperString{
private String data; <- 가장 중심이 되는 요소
public WrapperString(String data){ <- 기본생성자
this.data = data;
}
public String getData(){
return data;
}
public void setData(String data){
this.data = data;
}
@Override
public String toString(){
return this.data +"";
}
}
//4.
class WrapperObject{
private Object data; <- 가장 중심이 되는 요소
public WrapperObject(Object data){
this.data = data
}
public Object getData(){
return data;
}
public void setData(Object data){
this.data = data;
}
@Override
public String toString(){
return this.data + "";
}
}
//main
WrapperInt i1 = new WrapperInt(숫자);
System.out.println(i1.getData());
System.out.println(i1.toString());
WrapperBoolean b1 = new WrapperBoolean(true);
System.out.println(b1.getData());
System.out.println(b1.getData() ? "참" : "거짓");
System.out.println(b1.toString())
WrapperString s1 = new WrapperString("문자열");
System.out.println(s1.getData());
System.out.println(s1.getData().length());
System.out.println(s1.toString());
WrapperObject o1 = new WrapperObject("홍길동입니다.");
System.out.println(o1 .getData());
System.out.println(((String)o1 .getData()).length() ); -> object는 주소값을 가지기 때문에 앞에 자료형을 써줘야 한다.
출처: http://devbox.tistory.com/entry/Java-제네릭 [장인개발자를 꿈꾸는 :: 기록하는 공간]
'JAVA' 카테고리의 다른 글
ArrayList 구현 (0) | 2018.07.31 |
---|---|
HashMap 구현 (0) | 2018.07.31 |
Generic(제너릭) (0) | 2018.07.26 |
추상화 (0) | 2018.07.25 |
상속, Inheritance (0) | 2018.07.25 |