본문 바로가기

변수3

6-3장 변수와 메서드 下 (3.7 ~ 3.12) 7. JVM의 메모리 구조 * cv는 클래스 변수, lv는 지역 변수, iv는 인스턴스 변수를 뜻한다. 메서드 영역 (method area) 프로그램 실행 중 어떤 클래스가 사용되면, JVM은 해당 클래스의 클래스 파일(*.class)을 읽어서 분석하여 클래스에 대한 정보를(클래스 데이터)를 이곳에 저장한다. 이 떄, 그 클래스의 클래스 변수(class variable)도 이 영역에 함께 생성된다. 힙 (heap) 인스턴스가 생성되는 공간. 프로그램 실행 중 인스턴스는 모두 이곳에 생성된다. 즉, 인스턴스 변수(instance variable)들이 생성되는 공간이다. 호출스택 (call stack 또는 execution stack) 메서드의 작업에 필요한 메모리 공간을 제공한다. 메서드가 호출되면, 호출.. 2023. 4. 18.
6-3장 변수와 메서드 上 (3.1 ~ 3.6) 1. 선언 위치에 따른 변수의 종류 💡변수의 종류를 결정짓는 중요한 요소는 '변수의 선언된 위치'이므로 변수가 어느 영역에 선언되었는지를 확인하는 것이 중요!! 변수의 종류는 3가지이다. 1. 클래스 변수: 멤버 변수 중 static이 붙은 변수 2. 인스턴스 변수: 멤버 변수 중 static이 붙지 않은 변수 3. 지역 변수: 멤버 변수를 제외한 나머지 변수 iv와 cv는 클래스 영역에 선언되어 있으므로 멤버 변수이고 이 중 static이 붙은 cv는 클래스 변수, 붙지 않은 iv는 인스턴스 변수이다. 메서드인 method()의 내부, 즉 '메서드 영역'에 선언된 lv는 지역변수이다. 변수의 종류와 특징 인스턴스 변수 (instance variable) - 클래스 영역에 선언되며, 클래스의 인스턴스를 .. 2023. 4. 4.
2-1장 변수 1. 변수란? 단 하나의 값을 저장할 수 있는 메모리 공간 2. 변수의 선언과 초기화 변수의 선언 int age; // 변수타입 변수이름 메모리의 빈 공간에 ‘변수 타입’에 알맞은 크기의 저장 공간 확보 이 저장 공간은 ‘변수 이름’을 통해 사용 변수의 초기화 변수를 사용하기 전에 처음으로 값을 저장하는 것 int age = 25; 보통 변수는 한 줄에 하나 씩 선언하지만 타입이 같은 경우 ‘,’로 여러 변수를 한 줄에 선언 가능 int a, b; int x = 100, y = 100; 두 변수의 값 교환하기 Question ❓ 변수 x, y가 있을 때, 두 변수에 담긴 값을 서로 바꾸는 방법은? int x = 10; int y = 20; Answer int x = 10, y = 20; int tmp =.. 2023. 3. 7.