使用Kotlin怎么在類中創(chuàng)建一個main函數(shù)?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計制作、成都做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)普蘭店,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792
1、創(chuàng)建在class塊外面:
class Test{ } /** 我是main入口函數(shù) **/ fun main(args: Array<String>) { var test=Test(); }
這樣是一種方式,但是細心的童鞋可能會發(fā)現(xiàn)一個問題,目錄里面的文件圖標是灰色的,而且這種寫法看上去怪怪的,有強迫癥的可能會接受不了;
2、創(chuàng)建在class里面:
class Test{ companion object { /** 我是main入口函數(shù) **/ @JvmStatic fun main(args: Array<String>) { var test=Test(); } } }
這樣就可以把main入口函數(shù)創(chuàng)建在class里面了,我們來分解一下為什么要這么寫;
首先:
companion object { //我是靜態(tài)塊 /** 這里面定義的靜態(tài)變量跟靜態(tài)方法,類似java的:static **/ }
上面的方法就是kotlin定義靜態(tài)變量跟靜態(tài)方法的方式,我們知道java的main函數(shù)是一個靜態(tài)方法:
public static void main(String[] args){
}
那在kotlin里面我們換個思路,既然main是靜態(tài)方法,那么把它放在kotlin的 companion object { }里面試試,果然,成功過了,而且這樣寫看上去也不怎么變扭,目錄圖標也變成藍色的了,可喜可賀!
補充知識:Kotlin的類繼承-子類有構(gòu)造函數(shù)
//如果一個類要被繼承,可以用open關(guān)鍵字進行修飾 /** * Kotlin中的類可以有一個主構(gòu)造器,以及一個或多個構(gòu)造器,主構(gòu)造器是 類頭部的一部分,位于類名稱之后 * class Person constructor(firstName: String) {} 如果主構(gòu)造器沒有任何注解,也沒有任何可見度修飾符,那么constructor關(guān)鍵字可以省略。 class Person(firstName: String) { } */ open class Personage(val name:String,val age:Int){ } //如果子類有主構(gòu)造函數(shù),則基類必須在主構(gòu)造函數(shù)中進行初始化 class Student(name:String,age:Int,var no:String,var score:Int) :Personage(name,age){ } fun main(args:Array<String>){ val s= Student("Robbin",12,"323",22) //字符串模板 //$表示一個變量名或者變量值 //$varName表示變量值 //${varName.fun()}表示變量的方法返回值 println("學生姓名: ${s.name}") }
看完上述內(nèi)容,你們掌握使用Kotlin怎么在類中創(chuàng)建一個main函數(shù)的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
本文題目:使用Kotlin怎么在類中創(chuàng)建一個main函數(shù)
文章來源:http://chinadenli.net/article26/gggjcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、、網(wǎng)站設(shè)計、全網(wǎng)營銷推廣、網(wǎng)站營銷、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)