일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- ASMR
- 이모지
- Freesound
- 공부집중
- recyclerview
- 공자명언
- 이모지메모
- Flutter
- FSM
- Coroutine
- 파이썬
- bash
- Linux
- Streaming
- 명심보감
- 명언모음
- DART
- 오픈소스
- 코틀린
- Android
- 넷플릭스
- 장자명언
- 좋은글필사하기
- Firebase
- 벤자민플랭클린
- 1인개발자
- 소울칼리버6
- jetpack compose
- androidx
- kotlin
Archives
- Today
- Total
Vintage appMaker의 Tech Blog
[kotlin 배우기 github] 24. kotlin에서 java 가져오기 본문
강좌, 연재/앱으로 배우는 kotlin
[kotlin 배우기 github] 24. kotlin에서 java 가져오기
VintageappMaker 2020. 11. 19. 09:58- class가 아닌 변수와 함수는 자동으로 변환한다.
- 파일명을 대소문자 변경 후, 뒤에 Kt를 붙인다.
- 일반변수는 get변수명(), set변수명(인자) 형식으로 변환됨(val은 get변수명()만됨).
- @와 같은 어노테이션을 이용하면 자바에서도 편하게 사용가능함.
- @JvmField은 변수로 선언
- @JvmStatic은 static 함수로 선언
class JavaExport{
companion object {
// 반드시 const로 선언
const val name = "class name"
@JvmField var age = 32
@JvmStatic fun test(){
println("나이는 $age 입니다.")
}
}
// java에서는 메소드처럼 사용됨
// @JvmField var normal_variable로 하면 java에서도 멤버변수처럼 사용가능
var normal_variable = "밖에서 액세스가능"
fun test2(){
println("일반메소드")
}
}
// Kotlin 일반함수와 변수
val name = "name"
fun MyTest(){}
↑ 코틀린 소스
public class UsingKotlin {
public static void main(String[] args) {
// class가 아닌 변수와 함수는 자동으로 변환한다.
// 파일명을 대소문자 변경 후, 뒤에 Kt를 붙인다.
// 그리고 . 연산자 이후에 사용가능
JavaexportKt.MyTest();
JavaexportKt.getName();
// 클래스명은 그대로 사용가능
// 어노테이션으로 자바에서 사용할 것을 지정해주어야 함.
System.out.println(JavaExport.name);
JavaExport.age = 30;
JavaExport.test();
JavaExport je = new JavaExport();
je.test2();
}
}
↑ java소스
'강좌, 연재 > 앱으로 배우는 kotlin' 카테고리의 다른 글
[kotlin 배우기 github] 26. lateinit & lazy (0) | 2020.11.19 |
---|---|
[kotlin 배우기 github] 25. properties (0) | 2020.11.19 |
[kotlin 배우기 github] 23. java 가져오기 (0) | 2020.11.19 |
[kotlin 배우기 github] 22. closure 2 (0) | 2020.11.19 |
[kotlin 배우기 github] 21. closure 1 (0) | 2020.11.19 |
Comments