Overview
本節(jié)開始入手四種語言的第一個(gè)小程序
Java 篇
- 新建一個(gè)目錄
JGSK
作為工程的根目錄 - 在該目錄下新建目錄樹
com/bookislife/jgsk/java/_04_hello
- 在剛創(chuàng)建的
_04_hello
目錄下建立文件Hello.java
- 在 Java 文件中鍵入以下內(nèi)容
package com.bookislife.jgsk.java._04_hello;
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, Java!");
}
}
然后在根目錄下執(zhí)行以下命令編譯程序
javac com/bookislife/jgsk/java/_04_hello/Hello.java
接著運(yùn)行代碼
java com.bookislife.jgsk.java._04_hello.Hello
成功的話可以看到命令行輸出 "Hello, Java!" 字符串催束,第一個(gè) Java 程序就這樣運(yùn)行成功了羊异。
Groovy 篇
- 新建一個(gè)目錄
JGSK
作為工程的根目錄 - 在該目錄下新建目錄樹
com/bookislife/jgsk/groovy/_04_hello
- 在剛創(chuàng)建的
_04_hello
目錄下建立文件Hello.groovy
- 在 Groovy 文件中鍵入以下內(nèi)容
package com.bookislife.jgsk.groovy._04_hello
class Hello {
static void main(String[] args) {
def hello = "Hello, Groovy!"
println(hello)
}
}
然后在根目錄下執(zhí)行以下命令編譯程序
groovyc com/bookislife/jgsk/groovy/_04_hello/Hello.groovy
接著運(yùn)行代碼
groovy com/bookislife/jgsk/groovy/_04_hello/Hello.groovy
成功的話可以看到命令行輸出 "Hello, Groovy!" 字符串浴麻。
可以看到 Groovy 編譯與運(yùn)行的參數(shù)可以完全相同, 而不用像 Java 一樣一會(huì)兒有后綴名一會(huì)兒沒有,一會(huì)兒用 /
分隔路徑编整,一會(huì)兒又用 .
分隔路徑。
Scala 篇
- 新建一個(gè)目錄
JGSK
作為工程的根目錄 - 在該目錄下新建目錄樹
com/bookislife/jgsk/scala/_04_hello
- 在剛創(chuàng)建的
_04_hello
目錄下建立文件Hello.scala
- 在 Scala 文件中鍵入以下內(nèi)容
package com.bookislife.jgsk.scala._04_hello
object Hello {
def main(args: Array[String]) {
println("Hello, Scala!")
}
}
然后在根目錄下執(zhí)行以下命令編譯程序
scalac com/bookislife/jgsk/scala/_04_hello/Hello.scala
接著運(yùn)行代碼
scala com.bookislife.jgsk.scala._04_hello.Hello
成功的話可以看到命令行輸出 "Hello, Groovy!" 字符串。
可以看到 Scala 編譯與執(zhí)行與 Java 非常相似旋炒。
Kotlin 篇
- 新建一個(gè)目錄
JGSK
作為工程的根目錄 - 在該目錄下新建目錄樹
com/bookislife/jgsk/kotlin/_04_hello
- 在剛創(chuàng)建的
_04_hello
目錄下建立文件hello.kt
- 在 Kotlin 文件中鍵入以下內(nèi)容
package com.bookislife.jgsk.kotlin._04_hello
fun main(args: Array<String>) {
println("Hello, Kotlin!")
}
然后在根目錄下執(zhí)行以下命令編譯程序并打包
kotlinc-jvm com/bookislife/jgsk/kotlin/_04_hello/hello.kt -include-runtime -d hello.jar
接著運(yùn)行代碼
java -jar hello.jar
成功的話可以看到命令行輸出 "Hello, Kotlin!" 字符串。
可以看到 Kotlin 編譯與執(zhí)行與以上其它語言都不相同签杈,它需要將 Kotlin 源文件打包成可執(zhí)行的 jar 包后再運(yùn)行瘫镇,且生成的產(chǎn)物包含了 Kotlin 的運(yùn)行環(huán)境。