programming_languages:scala

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
programmiersprachen:scala [2015/10/10 22:31] – [for loop] phreazerprogrammiersprachen:scala [2017/02/19 15:36] phreazer
Line 1: Line 1:
-Scala+====== Scala ======
  
-**Sca**lable **la**nga 
  
-====== Start ======+**Sca**lable **la**nguage 
 + 
 +===== Start ===== 
  
   * No primitive types, everything is an object   * No primitive types, everything is an object
Line 12: Line 14:
  
  
-===== Hello World =====+==== Hello World ====
 <code scala> <code scala>
 object HelloWorld { object HelloWorld {
Line 33: Line 35:
 <code scala> <code scala>
  
-//+// different steps
 for (i <- 4 to (17,3)) println(i) for (i <- 4 to (17,3)) println(i)
 // other data types than int // other data types than int
Line 62: Line 64:
 </code> </code>
  
-==== Singleton objects ====+===== Singleton objects =====
  
 There are no static methods/vars in scala and singleton objects can't be constructed using a constructor with new. There are no static methods/vars in scala and singleton objects can't be constructed using a constructor with new.
Line 76: Line 78:
 </code> </code>
  
-==== Companion object ====+===== Companion object =====
  
 Prerequisite: object and class have the same name and are defined in the same file. Companion objects can access their private variables. Singleton objects without companion clases are standalone objects. Prerequisite: object and class have the same name and are defined in the same file. Companion objects can access their private variables. Singleton objects without companion clases are standalone objects.
  
-==== Case classes ====+===== Case classes =====
  
   * Use a factory method for construction   * Use a factory method for construction
Line 93: Line 95:
 </code> </code>
  
-==== Inheritance ====+===== Inheritance =====
  
-Scala don'supports multiple inheritance.+Scala doesn'support multiple inheritance.
  
 class B(arg:Int) extends A {} class B(arg:Int) extends A {}
Line 104: Line 106:
  
  
-=== Abstract classes ===+==== Abstract classes ====
  
 Difference to Traits: Abstract classes can have constructors. A class which inherits from an abstract class can't inherit from another. Difference to Traits: Abstract classes can have constructors. A class which inherits from an abstract class can't inherit from another.
Line 110: Line 112:
 The usage of override is optional. The usage of override is optional.
  
-=== Packages object ===+==== Packages object ====
  
 Objects which are visible in a whole package. Objects which are visible in a whole package.
Line 116: Line 118:
  
  
-=== Identity and equality ===+===== Identity and equality =====
  
 ==-Operator checks equality (identity in Java) ==-Operator checks equality (identity in Java)
  • programming_languages/scala.txt
  • Last modified: 2017/02/19 15:46
  • by phreazer