별의 공부 블로그 🧑🏻‍💻
728x90
728x170

InteliJ IDEA 살펴보기 & main() 함수

IntelliJ IDEA 도구 창의 단축키

도구창 단축키(윈도우) 단축키(맥)
Message [Alt] + [0] [Cmd] + [0]
Project [Alt] + [1] [Cmd] + [1]
Favorites [Alt] + [2] [Cmd] + [2]
Run [Alt] + [4] [Cmd] + [4]
Debug [Alt] + [5] [Cmd] + [5]
TODO [Alt] + [6] [Cmd] + [6]
Structure [Alt] + [7] [Cmd] + [7]
Terminal [Alt] + [F12] [Option] + [F12]

 

Create a new project

Coding

  • main을 타이핑하고 [Tab] 키를 눌러보자.
    • main 함수가 코드 어시스트에 의해 자동 완성 된다.
fun main() {

}

 

실행 단축키 (윈도우)

  • [Ctrl] + [Shift] + [F10]

 

main() 에서 매개변수를 사용하는 경우

  • maina를 타이핑하고 [Tab] 키를 눌러보자.
fun main(args: Array<String>) {

}

 

  • arg::Array<String> 매개 변수가 있는 main 함수가 생성된다.
    • 이는 자바의 String[] args로 변환된다.
      • args는 main()에 전달할 외부의 인수들을 가리키게 되고, 명령행으로부터 입력 받은 값들이 차례로 배열에 들어가게 된다.
fun main(args: Array<String>) {
    println("args[0] = ${args[0]}")
    println(args[1])    // [Ctrl] + [D] 를 누르면 행간 복사가 된다.
    println(args[2])
}

 

HelloKotlin.kt 분석

File : HelloKotlin.kt

fun main() {
    println("Hello Kotlin!")
}

 

바이트 코드, 디컴파일된 코드 확인하는 방법

코틀린 파일을 분석하려면 바이트 코드(ByteCode)디컴파일(Decompiled)  파일을 확인하면 된다. 다음과 같이 IntelliJ IDEA 프로그램에서 바이트 코드디컴파일 파일을 확인할 수 있다.

 

방법
InteliJ IDEA 프로그램 상단에서 [Tools] -> [Kotlin] -> [Show Kotlin Bytecode] 를 클릭한다.
바이트 코드를 확인한다.

상단의 [Decompile] 버튼을 누르면 디컴파일 파일을 확인할 수 있다.
디컴파일 파일을 확인한다.

코틀린 파일의 파일명이 디컴파일된 파일의 클래스명의 일부로 사용됨을 확인할 수 있다.
(HelloKotlin.kt HelloKotlinKt)

실제로 코틀린 코드는 JVM 상에서 실행되기 위해서 main 메서드는 파일명 기준으로 자동으로 클래스가 생성된다.

코틀린 파일 .kt 파일은 실제로는 .java 파일로 디컴파일되어 구동된다는 사실을 확인할 수 있다.

 

분석

  • class 가 없는데 main 메서드 하나로 println 을 콘솔에 실행하고 있다.
  • 실제로는 main 메서드는 파일명을 기준으로 자동으로 클래스가 생성된다.
public final class HelloKotlinKt {
   public static final void main() {
      String var0 = "Hello Kotlin!";
      System.out.println(var0);
   }
}

 

main()은 최상위 함수로 실행 진입점이다.

  • 자바와 같은 객체 지향 언어는 프로그램을 실행하기 위해 클래스와 그 안main() 함수가 필요하다.
  • 코틀린클래스 없이 main() 함수 하나로 실행 가능하다.
// Decompile 된 HelloKotlin.kt 소스
public final class HelloKotlinKt {
   public static final void main() {
      String var0 = "Hello Kotlin!";
      System.out.println(var0);
   }

   // $FF: synthetic method
   public static void main(String[] var0) {
      main();
   }
}

 

참고 : [Ctrl] + [B]

  • 코틀린의 메서드는 자바 언어로 작성되며 구현되어 진다.


println 메서드를 클릭한 후, [Ctrl] + [B] 버튼을 누른다.


Console.kt 파일이 등장한다.
다시 println 메서드를 클릭한 후, [Ctrl] + [B] 버튼을 누른다.

PrintStream.java 파일이 등장한다.

 

참고 사이트

 

코틀린 프로그래밍 기본 1

부스트코스 무료 강의

www.boostcourse.org

 

728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖