Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 웹 크롤링
- write by GPT-4
- 고전역학
- 코틀린
- 파이썬
- 시스템
- 인프라
- Database
- python
- 자바암호
- 리눅스
- jpa
- kotlin
- android
- oracle
- chatGPT's answer
- GPT-4's answer
- write by chatGPT
- 데이터베이스
- spring integration
- spring data jpa
- JVM
- 유닉스
- 자바
- 역학
- 소프트웨어공학
- flet
- Java
- 자바네트워크
- NIO
Archives
- Today
- Total
Akashic Records
@JvmStatic에 대해서 본문
728x90
@JvmStatic
어노테이션은 코틀린에서 제공되며, 코틀린의 함수나 변수를 Java의 정적 메소드나 변수처럼 동작하도록 만들어줍니다.
코틀린에서는 기본적으로 static 멤버를 가지지 않기 때문에, object나 companion object를 통해 Java에서 static처럼 동작하는 멤버를 정의할 수 있습니다. 하지만 이런 멤버들은 실제로는 자바의 정적 멤버가 아니므로, Java에서 이들을 호출할 때는 해당 object의 인스턴스를 통해 호출해야 합니다.
이런 경우 @JvmStatic
어노테이션을 사용하면, 코틀린의 object나 companion object 내부의 함수나 프로퍼티에 대해 자바에서 정적 멤버처럼 접근할 수 있습니다.
예를 들어:
class MyClass {
companion object {
@JvmStatic fun staticFunction() {
println("This is a static function.")
}
}
}
위의 코드에서 staticFunction
메소드는 @JvmStatic
어노테이션이 붙어있기 때문에, 자바 코드에서 다음과 같이 정적 메소드처럼 호출할 수 있습니다:
MyClass.staticFunction();
@JvmStatic
이 붙지 않았다면, Java에서 호출할 때는 MyClass.Companion.staticFunction()
과 같이 호출해야 합니다.
728x90
'Kotlin for Beginners' 카테고리의 다른 글
자바에서 파이썬 코드 호출하기 (1) | 2024.04.26 |
---|---|
JPA Entity을 kotlin으로 개발할때 가이드 (0) | 2023.06.09 |
자바에서 코틀린으로 변환 가이드 (0) | 2023.06.09 |
Kotlin과 다른 언어 비교 (0) | 2023.06.02 |
MyBatis 연동하기 (0) | 2023.06.02 |
Comments