자바 Access Modifier, Wrapper Class

갱두·2021년 9월 28일
0

📚 Java

목록 보기
7/9

Access Modifier

변수 또는 메소드의 접근 범위를 설정해주기 위해서 사용하는 Java의 예약어

총 네가지 종류가 존재함

public

어떤 클래스에서라도 접근이 가능

protected

클래스가 정의되어 있는 해당 패키지 내 그리고 해당 클래스를 상속받은 외부 패키지의 클래스에서 접근이 가능

(default)

클래스가 정의되어 있는 해당 패키지 내에서만 접근이 가능하도록 접근 범위를 제한한다.

private

정의된 해당 클래스에서만 접근이 가능하도록 접근 범위를 제한

Warpper Class

기본 자료형 (Primitive data type)에 대한 클래스 표현을 의미함
Integer, Float, Boolean 등이 예시임

int를 Integer 객체로 감싸서 저장해야 하는 이유가 있을까? 🤷🏻‍♀️

일단 컬렉션에서 제네릭을 사용하기 위해서는 Wrapper class를 사용해줘야 한다.
그리고 null값을 반환해야만 하는 경우에는 return type을 Wrapper class로 지정하여 null을 반환하도록 할 수 있다.
근데 이러한 상황 제외하고 일반적인 상황에서는 사용해야 하는 이유 ❌

AutoBoxing

JDK1.5 부터는 AutoBoxing, AutoUnBoxing을 제공한다. 이 기능은 각 Wrapper class에 상응하는 Primitive data type일 경우에만 가능

List<Integer> lists = new ArrayList<>();
lists.add(1);

여기서 Integer로 설정한 collection에 데이터를 넣을 때 Integer 객체로 감싸서 넣지 않음. = AutoBoxing

출처 : https://github.com/JaeYeopHan/Interview_Question_for_Beginner/tree/master/Java

profile
👩🏻‍💻🔥

0개의 댓글