2015-03-24 28 views

cevap

13

GÜNCELLEME: KOTLIN son versiyonları hatta aynı pakette birden main işlevlerini izin (onlar farklı dosyalarda ise).

Sen projede birden temel işlevleri ancak paket başına sadece bir ana işlevi olabilir

paketin birden ana fonksiyonlarını yapamaz nedeni paketindeki tüm fonksiyonlar Paket sınıfta saklanır olmasıdır böylece aynı imzaya sahip bir sınıfta birden fazla işleve sahip olamazsınız. Birden ana işlevleri istiyorsanız

Yani farklı paketler Sergey Mashkov yorumuna ek olarak

+1

You Artık her Kotlin dosyası için bir ana olabilir. Kotlin, tüm üst düzey işlevler için artık bir paket düzeyi kapsayıcı sınıfı oluşturmaz ve bunun yerine dosya başına bir sınıf oluşturur. Eğer dosya ismi 'Uygulama 'ise ve' foo.bar''da 'main()' fonksiyonuna sahipse, o zaman sınıf ismi 'foo.bar.AppKT' olacaktır.' Ana()' –

+0

Geçerli olmak için cevap, yukarıdaki yorumu görmek için) –

+0

Eğer yaparsanız, o zaman tüm ancak bir ana fonksiyonun özel olması gerekir, aksi takdirde bir isim çatışması olacaktır. Yoksa bir şey mi özlüyorum? –

15

em tanımlamak zorunda: Bir nesnesinin içinde main koymak ve ona @JvmStatic işaretleyebilirsiniz:

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