[JAVA] static 정리

2021. 5. 15. 12:27·JAVA
728x90

static 선언

  • 메모리에 한번 할당되어 프로그램이 종료될 때 해제 
  • static 키워드를 붙이면 자바는 메모리 할당을 딱 한번만 하게 되어서 메모리 사용에 이점 
  • Heap영역이 아닌 static영역에 할당되어 GC 관리 영역 밖이라 자주 사용하면 퍼포먼스에 영향을 줌 
  • static으로 설정하면 같은 곳의 메모리 주소만 바라보기 때문에 static 변수의 값을 공유하게 됨

static 변수 

  • 클래스 변수, 객체를 생성하지 않고 접근 가능 함

static 메소드

  • 객체의 생성 없이 호출이 가능함 

예시

public class Book {
  /* static 변수 */
  public static String BOOK_NAME = "STATIC BOOK";
  public String book = "BOOK";

  /* static 메소드 */
  /* static 메소드에는 static 변수만 선언됨 */
  public static void callStaticBook() {
    System.out.println(BOOK_NAME);
  }

  public void callBook() {
    System.out.println(book);
  }
}

public class Main {

  public static void main(String[] args) {
    /* class에서 바로 호출 */
    System.out.println(Book.BOOK_NAME);
    Book.callStaticBook();

    /* 일반적인 instance 선언후 메소드 호출 */
    new Book().callBook();
  }
}

보통 static 변수는, 상수로 많이 사용하고, static 메소드 같은 경우 util로 사용하는 클래스에서 사용

저작자표시

'JAVA' 카테고리의 다른 글

[JAVA] 상태패턴  (0) 2021.05.21
[JAVA] Builder 패턴  (0) 2021.05.16
[JAVA] 상속 / 컴포지션  (0) 2021.05.15
[JAVA] 초기화 순서  (0) 2021.05.12
[JAVA] Lombok @Delegate  (0) 2021.04.18
'JAVA' 카테고리의 다른 글
  • [JAVA] Builder 패턴
  • [JAVA] 상속 / 컴포지션
  • [JAVA] 초기화 순서
  • [JAVA] Lombok @Delegate
집한구석
집한구석
  • 집한구석
    tgyun615.info
  • 전체
    오늘
    어제
    • 카테고리 (183)
      • JAVA (38)
      • SPRING (15)
      • KOTLIN (23)
      • NETTY (1)
      • DEVOPS (3)
      • DOCKER (7)
      • KUBERNETES (2)
      • JAVASCRIPT (1)
      • SPLUNK (3)
      • ELK (7)
      • KAFKA (2)
      • GO (4)
      • ALGORITHM & DATA STRUCTURE (9)
      • IDE (5)
      • OS (16)
      • NETWORK (14)
      • GCP (2)
      • AWS (2)
      • DATABASE (10)
      • CLEANCODE (7)
      • OTHER (12)
  • 최근 글

  • 태그

    Spring
    Elk
    클린코드
    splunk
    엘라스틱서치
    코틀린
    프로그래머스
    docker
    AWS
    이펙티브코틀린
    Kafka
    java
    JPA
    cleancode
    go
    IntelliJ
    ElasticSearch
    SQL
    자바
    이펙티브 코틀린
  • 링크

    • github
    • linkedin
    • resume
  • hELLO· Designed By 정상우. v4.10.3
집한구석
[JAVA] static 정리
상단으로

티스토리툴바