Static 키워드

Gmini.Y·2023년 12월 1일

Dart 기본

목록 보기
3/4

오름캠프 flutter 과정에서 학습한 내용을 정리하는 시리즈 입니다.

Static 키워드로 선언된 변수는 class 내부에 선언이 되어 있어도 class와는 상관없는 메모리에 따로 할당된다. 이는 Top Level 변수 선언과 동일하다. 따라서 인스턴스를 생성하여도 인스턴스에서는 접근이 불가능하고 class 에서만 접근이 가능하다.

// int heroMoney = 100; => top level 변수로 static 과 동일.
class Hero {
	static int money = 100;
    String name;
    int hp;
    Sword? sword;
}

void main() {
	final hero = Hero(name: "홍길동", hp: 100);
    print(Hero.money); // static은 class에서 접근.
}

클래스에서 생성된 모든 인스턴스가 동일한 값을 공유할때는 static 을 사용하는 것이 메모리 낭비를 막을 수 있는 방법이다.

0개의 댓글