从main函数开始学习kotlin

从main函数开始学习kotlin

main的写法:

任何一个种语言都有一个共同的入口函数:main,学习kotlin之前先熟悉它的main函数的写法。有了main函数的入口,就能有一片操练的场地,可以在main函数里加入自己的demo代码,以方便学习基本语法。
读者们大概不会对java的main函数感动陌生,学习新知识最好的方法就说关联上大脑里原有的知识,我们来看看java里的main函数,方便对比,加深理解。
java里的main函数一般是这样的:

    class JavaMain {
    public static void main(String[] args) {
        System.out.println("class name is:" + JavaMain.class.getSimpleName());
    }
}

main函数必须在一个class里,另外main函数必须是public作用域,而且声明成静态的;一个类存在一个全局静态的main函数java就会把它当成一个应用程序,可以直接运行它。

那么kotlin里的main呢,如下:

package demo
object Main {
    @JvmStatic
    fun main(args: Array<String>) {
        println("Hello, world!")
    }
 }

我们在demo包下创建一个类,在类中创建一个main方法,但是必须通过@JvmStatic标注告诉jvm该方法为静态方法;
还有一种更为简洁的声明方式,

package demo
fun main(args:Array<String>) {
    println("hello")
}

直接声明一个main函数,为什么可以这样呢?kotlia语言的初衷之一就是要智能化,上面的代码会被放在一个以该文件名为名的class里,比如我的文件名是firstMain.kt,那么你将通过demo.firstMain运行上面的main方法。你也可以通过 file-targeted annotation注释重命名文件里的类名,比如:

@file:JvmName("MyApp")
package demo
fun main(args:Array<String>) {
    println("hello")
}

此时你可以运行demo.MyApp

二:如何运行一个main对象

  1. 在android stuido里运行
    最简单的运动方式就是在android studio中,选中你要运行的代码,右键菜单中选择run “xxx.xxx”,自动会创建一个该类的runtime configuration。如果需要输入参数那就的配置一个运行项,从Edit Configuration进入设置界面,如下图
    这里写图片描述

    可以在program arguments里输入你调用的参数,请务必选择Kotlin方式运行,否则运行会出现异常。常见的错误是通过右键点击该文件,在弹出的菜单中选择”run xxxx.xxx”,这个方式是默认的junit的运行该类,导致出现“No runnable method ”的junit error。

    2.使用kotlin编译成jar运行,请先保证您的kotlin环境是否已经安装好,安装方法见官网:http://kotlinlang.org/docs/tutorials/command-line.html,通过命令需要两步完成,先把代码文件打包成可运行的jar

$ kotlinc hello.kt -include-runtime -d hello.jar
上述命令hello.kt 为你要编译 的代码文件 ;-include-runtime 让.jar文件是一个包含kotlin代码库的可运行文件;-d选项表示你要输出的目录;hello.jar是你的目标目录。

通过如下命令运行:

$java -jar hello.jar

3.shell窗口运行运行脚步,可以输入任意代码,立刻会输出结果,

这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值