You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Note
Data Type에 따른 분류 - 기본형 변수/참조형 변수
값
을 담는다.위치(참조값)
을 담는다.+
,-
와 같은 연산 가능int
,long
,double
등클래스
(cf.String
은 클래스이므로, 참조형 변수이다. 그러나 기본형과 같이 문자 값을 바로 대입할 수 있는 특별한 변수이다. (#58))스택 영역
에 저장힙 영역
에 실제 값을 저장하고, 그 참조값은스택 영역
에 저장래퍼 클래스
객체가 아닌
, 기본형 변수의 한계를 해결하기 위한 래퍼 클래스!equals
를 통해 비교해야 한다.래퍼 클래스의 주요 메서드
래퍼 클래스의 성능
기본형은 메모리에서 단순히 그 크기만큼의 공간을 차지하고, 래퍼 클래스는 객체를 다루는데 필요한 메타 데이터를 포함하므로, 더 많은 메모리를 사용한다. 따라서 기본형 연산이 래퍼 클래스에 비해 더 빠르다.
=> CPU 연산을 아주 많이 수행하는 특수한 경우이거나, 수만~ 수십만 이상 연속해서 연산을 수행해야 하는 경우라면 기본형을 사용하자!
=> 그렇지 않은 일반적인 경우라면 코드를 유지보수하기 더 나은 것을 선택하면 된다.
선언 위치에 따른 분류 - 지역 변수/매개변수/인스턴스 변수/클래스 변수/상수
메서드 영역
클래스 영역 (멤버 변수)
static이 아닌
변수, 각각의 인스턴스에서 독립적으로 사용하는 변수static
변수, 여러 인스턴스에서 공통으로 사용하고 싶을 때 정의하는 변수final
키워드를 사용하여 선언된 변수 (변경 불가)Beta Was this translation helpful? Give feedback.
All reactions