참조 타입

파란상자·2024년 10월 11일
0

참조타입

  • 객체의 번지를 참조하는 타임
    => array, enum, class, interface

JVM은 운영체제에서 할당받은 메모리 영역을 메소드(static) 영역, 힙 영역, 스택 영역으로 구분해서 사용
-메소드 영역
-힙 영역 : 객체가 생성되는 영역
-스택 영역 : 실행 처리부
FAT 파일 : 주소값을 가지고 있는 파일
메소드 영역 -> 스택 -> 힙 -> 스택 -> 힙
*힙에서 불러오기 위한 주소값은 스택에 있음

hashCode() => hash code 반환
자바는 C++과 다르게 주소값을 안보여주고 매핑 된 hash code를 보여줌

리터럴 풀 : JVM 메모리 관리 방식 중 하나 , 리터럴(상수)로 지정된 값들을 보관하고 값이 같을 경우
같은 주소값으로 지정하여 관리

==, != 연산자

  • 객체의 번지를 비교해 변수의 값이 아닌지를 조사
  • 번자기 같다면 동일한 객체를 참조하는 것이고 다르다면 다른 객체를 참조하는 것

null

  • 참조 타입 변수는 아직 번지를 저장하고 있지 않다는 뜻
  • null도 초기값으로 사용 할 수 있기 때문에 null로 초기화된 참조 변수는 스택영역에 생성

String 타입

문자열은 String 객체로 생성

String 변수명;

배열(array) 타입

  • 연속된 공간에 값을 나열시키고, 각 값에 인덱스를 부여해 놓은 자료 구조
  • 인덱스는 대괄호[]와 함께 사용하여 각 항목의 값을 읽거나 저장하는데 사용

    타입[] 변수 또는 타입 변수[]
    타입[] 변수 = new 타입[길이]

열거(enum) 타입

  • 요일, 계절처럼 한정된 값을 갖는 타입
    public enum Week {
    	MONDAY,
        TUESDAY,
        WEDNESDAY,
        THURSDAY,
        FRIDAY,
        SATURDAY,
        SUNDAY
     }
profile
프로그래머 생산중....

0개의 댓글