꾸준히 하고싶은 개발자

Final 과 const 본문

모두의연구소

Final 과 const

프라우스 2023. 12. 3. 00:04

const and final

const: (컴파일)

인스턴트를 생성할때 무조건 새로운 인스턴트를 생성한다 하지만 const로 선언된 변수나 위젯인경우 생성을 앱이 시작이될때 메모리와 같이 등록을 하여 해당시점에서 새로운 인스턴트가 아닌 메모리에 올라가있는 인스턴트를 매번 사용한다.

setState 등 상태 변경에서 새로운 인스턴스를 생성하고 기존의 인스턴스는 메모리에 남게 되어 일정 시점에서 GC에 의해 지워지는데 빈번한 생성은 메모리 효율을 저하시킬 수 있다. 하지만 const를 통한 재사용 시 이러한 사용하지 않는 인스턴스가 메모리에 남게되는 메모리 낭비를 효율적으로 관리할 수 있으며 . 컴파일할 때에 결정되므로 상수와 같이 사용됩니다.

 

final: (런타임)

const와 마찬가지로 처음 선언한 값을 변경할 수 없다.

final은 생성시 값을 부여하지 않아도 이후 최초 1번 값을 지정해줄수가있다.

선언부의 코드만으로는 컴파일러가 해당 변수의 값을 알 수 없기 때문에 const처럼 앱 실행 시 메모리에 넣어 관리할 수 없다.

'모두의연구소' 카테고리의 다른 글

6일차 캡슐화 (encapsulation)  (0) 2023.12.04
6일차 컬렉션  (0) 2023.12.04
5일차 class  (1) 2023.12.01
day 4일차 클래스 개념  (0) 2023.11.30
2일차 class  (1) 2023.11.29