JAVA

static 키워드

hohahihi 2023. 3. 2. 20:30
  1. 메모리를 공유
     
  2. 멤버 접근
    클래스이름.변수이름
    ex) System.in​

    클래스이름.메소드이름
    ex) Math.random()
  • Stack이나 Heap 메모리 이외의 별도의 메모리 영역(Static 메모리)에 값을 저장하여 공유
  • Static 메모리에 값을 공유하기 때문에 static으로 선언한 변수와 메소드는 따로 객체를 생성하지 않아도 사용 가능
    - static으로 선언한 것은 객체를 생성하지 않고 사용하는 것이 메모리를 절약할 수 있다.

  • 각 객체만의 고유한 상태 값이나 메소드를 가져야하는 경우에는 static을 사용하면 안된다.
    - 인스턴스 멤버로 선언해야 한다.
  • 자바의 모든 클래스의 최상위 클래스는 Object 클래스이고, Object 클래스가 가지고 있는 멤버를 상속받는다.
    ex) toString() 등