Wrapper 클래스 , 빠른for문, 제네릭(Generic), 싱글톤 패턴

최동민·2022년 5월 27일
0

JAVA

목록 보기
9/13

Wrapper 클래스

큼직한 걸로 작은 걸 감싼다

기본형 타입을 객체화 하도록 도와주는 클래스
클래스 타입 -> Wrapper 클래스

Wrapper 클래스 > 기본형 타입 : 박싱(Boxing)
Wrapper 클래스 < 기본형 타입 : 언방식(Unboxing)

	String str2 = "1"; // 오토 박싱 
	// 큰거(String)에서 작은걸("1") 감싼다.
	Integer data = 10; // 오토 박싱
	int data2 = data; // 오토 언박싱 

Integer > int
Double > double

왜 사용할까?
Wrapper 클래스를 사용하는 이유

  • 기본형 타입을 객체로 다뤄야 할 때

  • 매개변수를 객체로 넘길 때
  • 기본형 타입이 아닌 객체로 저장해야 할 때
  • 객체간의 비교가 필요할 때

빠른 for문

(향상된 for문, foreach문...)

2차원 배열 응용하기

결과


제네릭(Generic)

포괄적인, 총칭의

자료형을 정하지 않는 기법 (외부에서 저장)
<대문자>

E - Element
K - Key
N - Number
T - Type
V - Value

1. Generic Class

클래스 내부에서 사용될 자료형을 지정한다.

이제는 타입을 지정해준다. (타입은 꼭 Wrapper 클래스 사용할 것)

Generic(Integer> g2 = new Generic<>();
g2.setData(new Integer(10));

System.out.println(g2.getData()); // 10

이렇게 추가 가능

2. Generic Method

클래스에 제네릭을 선언하지 않고, 메서드에만 제네릭을 선언
메소드의 매개변수 또는 리턴타입이 제네릭이라면
리턴타입 앞에도 제네릭을 선언해야 한다.


결과

3. Generic Interface

인터페이스 내부는 미구현 된 메소드. 거기에 제네릭을 붙인다.
그럼 외부에서 인터페이스를 구현(implements) 하는 클래스에 타입을 지정.


싱글톤 패턴

단 한개의 객체만을 가지고 있는 클래스를 싱글톤 패턴으로 구현한다.
클래스 내에 객체를 생성하고 그 객체를 다른 곳에서 공통으로 사용한다.
즉 그 객체 하나 뿐이다.

클래스를 하나 만든다.

다른 패키지에서 불러오려니 not visible. 못찾겠다고 한다.
private이니까. 그럼 위 클래스에서 public으로 바꿔야할까?

Single의 객체는 Single 안에 만들어져있다.

싱글턴 패턴에서는 그 객체이름을 instance로 많이 준다.
걔를 실체화한게 instance거든 .
싱글턴 패턴의 그 싱글턴 클래스를 실체화 시켰다해서 instance로 하고
실체화 된 것을 가져올거니까 getInstance로 이름을 많이 쓴다.

profile
코드를 두드리면 문이 열린다

0개의 댓글