2010-06-19 17 views
25

ithal:
Scala, İki dosya var sınıf

logic.scala ve logic.scala bir sınıf içerir ve ana yöntemi ile bir sınıf var main.scala

main.scala (çalıştırmak için) . Ve logic.scala'dan bir sınıf ithal etmek ve nesne (ler) oluşturmak ve onlarla çalışmak için bu sınıfı kullanmak istiyorum.
Nasıl düzgün şekilde alınır ve derlenir?

+0

ile uygulamayı çalıştırmak, burada bir göz: http://www.scala-lang.org/ node/119 ve Scala kodunun derlenmesi ve yürütülmesi için buraya bakın: http://www.scala-lang.org/node/166 Sorunuzu düzenlerseniz ve sorununuzu göstermek için bir örnek kod eklerseniz eminim mor alacaksın e özel yardım. –

+1

Kodunuzu nasıl düzenlediğinize dair herhangi bir öneride bulunmadan önce, Scala'da kaynak dosyalara * sahip bire bir olan public sınıfları için Java gereksiniminin * bulunmadığını bilmelisiniz. Sınıfları, uygun bulduğunuz herhangi bir şekilde dosyalara ayırma seçeneğiniz vardır. Tek istisna 'mühürlü' kavramı ve * arkadaşlık * 'sınıfı' + 'nesnesi' kavramıdır. –

cevap

40
  • logic.scala kod
package logic 

class Logic{ 

    def hello = "hello" 

} 
  • main.scala kod
package runtime 

import logic.Logic // import 

object Main extends Application{ 

    println(new Logic hello) // instantiation and invocation 

} 
  • scalac
  • 0 ile dosya derlemek
scalac *.scala 
  • scala
Bildiğim kadarıyla Scala paketler ve ithalatı söz konusu olduğunda
scala -cp . runtime.Main 
+11

** Uygulama ** özelliğinin kullanımdan kaldırıldığından, bunun yerine ** App ** özelliğinin kullanılması önerilir. – danriti

+0

Bu kod bana şu hatayı veriyor: src/main/scala/main.scala: 3: hata: bulunamadı: nesne mantığı import logic.Logic // import ^ src/main/scala/main.scala: 7 : hata: bulunamadı: tür Mantık println (yeni Mantık merhaba) // örnekleme ve çağırma ^ –