Skip to content

Java를 연습할 수 있는 JShell, 그리고 파이썬과의 차이점

JShell이란

JDK 9 부터 생긴 기능이라고 한다.

JShell을 키면, Python 처럼 코드를 입력하면 즉시 결과 값을 받는 콘솔 기능이다.

자바를 놓은지 거의 10년(학부생 때)이 되었는데 공부했을 때 2014년이였어서 JShell을 못들은게 당연하다.

2014년엔 jdk 8이 나왔기 때문이다. 공부 할 때는 이런거 없었지.

정말 세상이 좋아진 것 같다. 나도 이제 자바 공부 쉽게 할 수 있는걸까??? 이클립스 깔고 환경변수 설정하고 실행할 때는 Ctrl+F5 입력하라고 하고... 공부하기도 전에 진이 빠졌다.

앞으로 다른 언어 공부할 때, 인터프리터가 있는지 부터 확인해야 겠다. 컴파일러 언어와 인터프리터의 경계가 무너지고 있는 것 같다..

JShell 실행

JShell은 아래와 같이 실행하면 된다.

$ jshell
결과 값
Welcome to JShell -- Version 17.0.7
|  For an introduction type: /help intro

jshell> 

위와 같이 jshell> 입력창이 나타나고, 이 안에서 코드를 입력하면 바로 실행된다.

만약 나가고 싶다면 /exit 를 입력하면 나가진다. ( Ctrl+C 가 안먹히니 주의하라)

기본 함수 사용 팁

기본 함수를 사용할 때 입력하다가 Tab키를 누르면 사용할 수 있는 메소드 목록이 나온다.

System.out.Tab

jshell> System.out.
append(        checkError()   close()        equals(        flush()        format(        getClass()     hashCode()     notify()       notifyAll()    print(         printf(        println(       toString()     wait(          
write(         writeBytes( 

조심해야 할 자료 타입

Python처럼 동적으로 자료형이 변경되었으면 좋겠지만, java는 규율이 엄격하다.

만약 int 와 int를 나누면 python에서는 float로 형 변환 되는데, java는 int 그대로 출력되어 소수점이 잘려나간다.

문자열과 문자도 엄격히 구분된다 ""는 문자열이고 ''는 문자로 표현한다. Python 처럼 System.out.println('hello world')라고 입력하면 오류가 발생한다.

구글링 할 때 알아야 할 용어

영어로 구글링 할 때가 있다. 영어로 어떻게 표현해야 할 지 모를때가 많다.

java 강의 들으면서 좋은 점은 한국어 자막이 나오고 말하는건 영어로 설명하니 2가지 언어의 용어를 전부 배울 수 있다.

각 용어는 아래의 그림과 같다.

Image title

그림 1 - 프로그래밍 요소 정리


Comments