관리 메뉴

SIMPLE & UNIQUE

static 개념 본문

Java & Spring/Guide

static 개념

착한코딩 2017. 8. 23. 16:03

 static

  • 일반 변수의 경우 객체가 생성될때마다 새롭게 생성되어 쓰이나 정적변수는 이와는 다르게 처음에 한번만 생성되고 공유해서 사용한다.

  •  static이란 클래스가 로딩될때 메모리 공간을 할당하는데 이 결정된 공간이 변하지 않으므로 정적이라는 표현을 쓴다. 

  • 메모리에 로딩 즉 메모리 공간을 확보해야 해당멤버를 쓸수가 있는데 자바는 프로그램을 실행하면 클래스가 우선 메모리에 로딩되나
    static은 이보다 먼저 메모리에 로딩되어진다.

  • 일반변수는 객체가 생성될때마다 메모리 공간이 할당되나 static의 경우 클래스가 메모리에 로딩되기전 이미 정적변수와 정적메소드를 위한 메모리 공간이 할당되므로 객체가 생성될때마다 메모리 공간이 할당되지 않는다.

  • static에 대한 장점을 크게 두가지로 나눌수 있다.
    첫째로, static을 쓴 변수나 메소드는 객체생성없이 모든 객체가 아무런 제약없이 공유할수 있다.
    둘째로, static을 쓴 변수는 값을 공유하므로 연속적으로 그 값의 흐름을 이어갈수 있다는 것이다.
    다시 말해서 일반변수는 객체생성시마다 그 값이 초기화되지만 정적변수는 객체생성을 하지 않으므로 다른 객체에서 계속적으로 이어서 그 값을 변화시킬수 있는 것이다. 


출처: http://unabated.tistory.com/entry/정적-변수-정적-메소드-static [랄라라]

'Java & Spring > Guide' 카테고리의 다른 글

인터페이스 java  (0) 2017.08.30
SSL 인증서  (0) 2017.08.29
public static void main(String[] args)  (0) 2017.08.23
JAVA Session 사용법  (0) 2017.08.23
Log4j  (0) 2017.08.22
Comments