-
@JvmStatic 어노테이션Android📱 2023. 1. 8. 20:56
- 2 way databinding을 구현하다가 알게된 어노테이션 정리
- fragment애서 newInstance를 만들때도 생성된다.
companion object { @JvmStatic var barSize : Int = 0 }- @JvmStatic 어노테이션
- Java의 Static처럼 사용할 것을 알려주는 어노테이션
- 정적 getter, setter를 구현해준다
미안하다 사실 이걸 말하려고 어그로 끌었다…..
- companion object
- kotlin의 companion object는 자바의 static처럼 사용 할 수 있지만 사실 둘은 다르다!
- companion object는 말그대로 동반 객체 해당 클래스가 메모리에 올라갈때 그 이름을 빌려 같이 생성되는 객체이고 static은 힙 메모리영역에 할당되어 컴파일 시 바로 메모리에 올라가게 된다
- 테스트
- 실제로 @JvmStatic어노테이션이 붙은 변수는 Test class 안에 getter, setter가 생성

- 안붙은 변수는 Companion class 안에만 getter, setter가 존재

- 실제로 @JvmStatic어노테이션이 붙은 변수는 Test class 안에 getter, setter가 생성
'Android📱' 카테고리의 다른 글
[Android] Back 버튼 조절 onBackPressedDispatcher (0) 2023.02.21 [Android] 앱 언어 변경 (0) 2023.02.15 Compose 상태관리 Stateful...? (0) 2022.10.25 DI란 무엇인가.... feat. Hilt, Koin (2) 2022.10.19 [Android] Retrofit2 사용 시 헤더에 데이터 넣기! (0) 2022.10.17