티스토리 뷰
힙메모리 - new 연산자로 만든 객체나 배열이 저장되는 메모리
new할때마다 메모리에 데이터크기만큼 새롭게 할당받고 해당 메모리의 주소를 받고 메모리주소가 해당변수에 저장된다.
자바의 가비지컬렉터가 사용이 끝난 new객체의 메모리를 해제해준다.
스택 - 메소드의 지역변수나 파라미터가 저장되는 메모리.메소드가 사용하는 메모리
메소드가 호출될때 할당되고 메소드가 종료하면 반환한다.메모리에서 지워지지는 않고 쓰레기값으로 남아있으며
다음 메소드가 호출될때 그 영역에 새로운 데이터가 덮어쓰여진다.
static memory(정적메모리) - static 키워드로 표시하는 변수나 메서드.
프로그램이 시작할때 생성되고 프로그램이 종료되면 끝난다. 메모리중 가장 유효기간이 긴 메모리.
값의 초기화는 한번만 이루어지고,
ststic변수를 공동으로 사용한다.
예를들자면, static멤버변수를 갖는 클래스로 객체를 여러개 만들어 다른객체들이 만들어놓는다.
객체1의 ststic멤버변수의 값을 변경한다. 그러면 객체2의 static멤버변수의 값도 변경되어진다.
static메서드에서는 static멤버변수와 지역변수만 사용가능하고 일반멤버변수,일반메서드는 사용할 수 없다.
일반멤버변수는 객체를 생성해야 메모리를 할당 받는데, static메서드는 객체 생성 전에도 호출할 수 있기 때문이다.
-힙 메모리 : new로 만든 모든 instance는 힙에 쌓인다. 따라서 메소드가 끝나도 메소드 안에서 사용했던 new인스턴스는 사라지지 않는다.
-펌젠 : 자바컴파일된 클래스파일이 저장 된다. 그중에 static한 영역이 존재.
Queaue : FIFO(First In First Out)
Stack : FILO(First In Last Out)
'Java' 카테고리의 다른 글
예외처리 Exception (0) | 2018.11.20 |
---|---|
interface (0) | 2018.11.20 |
Array와 List (0) | 2018.11.19 |
switch case문, 다양한 for문 (java의 iterator for문) (0) | 2018.11.19 |
바이트, 비트 연산(쉬프트 연산, 2의 보수 처리 등) (0) | 2018.11.19 |
- Total
- Today
- Yesterday
- spring 기본 login
- hot swapping
- 활성화된 파일 위치 찾기
- 웹서버설치
- tomcat 환경변수
- Apache설치
- mysql 연동
- login page
- SQL 개발툴
- apache tomcat 설정
- 패키지 위치 찾기
- Spring Security
- 나눔고딕코딩
- eclipse disable welcome page
- compileOnly
- java
- 라이브러리 종속성
- EDAILY CODING CHALLENGE
- 알고리즘
- 기초입문
- 이데일리 코딩 챌린지
- Whitelabel Error Page(404 Not Found)에러
- spring loaded
- webprogramming
- Encoding UTF-8
- DB 툴
- runtimeOnly
- springboot에서 jsp호출
- gradle 종속성
- Autoscroll from Source
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |