1. 참조 타입 대한 설명으로 틀린것은 무엇입니까? ① 참조 타입에는 배열,열거,클래스,인터페이스가 있다. ( O ) ② 참조 타입 변수의 메모리 생성 위치는 스택이다. ( O ) ③ 참조 타입에서 ==,!= 연산자는 객체 번지를 비교한다. ( O ) ④ 참조 타입은 null 값으로 초기화 할 수 없다. ( X ) 참조타입 변수가 null 값을 가질 경우 참조할 객체가 없으므로 객체는 힙 메모리 영역에 생성되지 않고, 변수만 스택영역에서 생성되어 null값을 가질 수 있다. 2.자바에서 메모리 사용에 대한 설명으로 틀린 것은 무엇입니까? ① 로컬 변수는 스택 영역에 생성되며 실행 블록이 끝나면 소멸된다. ( O ) ② 메소드 코드나, 상수, 열거 상수는 정적(메소드)영역에 생성된다. ( O ) ③ 참조되..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkwzM9%2Fbtsal5R0k20%2FkE1OLdph5sEAPV6oMEk0nK%2Fimg.png)
1. 데이터 타입 분류 프로그램이 하는 일은 결국 데이터를 처리하는 것이다. 따라서 데이터를 얼마나 잘 다루느냐가 좋은 프로그램을 작성할수 있는 관건이 된다. 데이터를 잘 다루기 위해서는 자바에서 지원하는 데이터 타입에 대해서 제대로 이해 할 필요가 있다. 자바의 데이터 타입에는 크게 기본 타입(원시 타입: primitive type) 과 참조 타입(reference type) 으로 분류된다. 기본 타입이란 정수, 실수, 문자, 논리 리터럴을 저장하는 타입을 말한다. 지금까지 우리는 기본 타입으로 변수를 선언하고 데이터를 저장하는 연습을 했다. 이번 장 부터는 참조 타입에 중점을 두려고 한다. 참조 타입이란 객체(Object)의 번지를 참조하는 타입으로 배열, 열거, 클래스, 인터페이스 타입을 말한다. ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2KjW9%2FbtsatWGUvCC%2FtKJpbaQU3APs77pJ20ifH1%2Fimg.png)
메모리 사용 영역 본격적으로 참조 타입을 알아보기 전에 우선 JVM이 사용하는 메모리 영역에 대해서 알아보기로 하자. java.exe로 JVM은 운영체제에서 할당받은 메모리 영역 (Runtime Data Area) 을 다음과 같이 세부 영역으로 구분해서 사용한다. 1. 메소드 ( Method ) 영역 메소드 영역에는 코드에서 사용되는 클래스(~.class) 들을 클래스 로더로 읽어 클래스별로 런타임 상수풀(reuntime contant pool), 필드(field) 데이터, 메소드(method)데이터 , 메소드 코드, 생성자(constructor) 코드등을 분류해서 저장한다. 메소드 영역은 JVM이 시작할 때 생성도디고 모든 스레드가 공유하는 영역이다. 힙(Heap)영역 힙 영역은 객체와 배열이 생성되는..