Packages and Imports
Object Namespaces
Group constants and helpers under an object name.
object-namespace
An `object` acts as a namespace for related constants and methods. Calling `Config.scale` reaches the grouped helper through its qualified name.
Object Namespaces
ObjectNamespace.scala
Replay: real traced execution (multi-file project)
object Config {
val limit = 10
def scale(n: Int): Int = {
n * limit
}
}
object Main {
def main(args: Array[String]): Unit = {
val n = 3
val scaled = Config.scale(n)
println("limit=" + Config.limit)
println("scaled=" + scaled)
}
}
object Config {
val limit = 10
def scale(n: Int): Int = {
n * limit
}
}
object Main {
def main(args: Array[String]): Unit = {
val n = 1
val scaled = Config.scale(n)
println("limit=" + Config.limit)
println("scaled=" + scaled)
}
}
object Config {
val limit = 10
def scale(n: Int): Int = {
n * limit
}
}
object Main {
def main(args: Array[String]): Unit = {
val n = 5
val scaled = Config.scale(n)
println("limit=" + Config.limit)
println("scaled=" + scaled)
}
}
n ← 3
9object Main {10 def main(args: Array[String]): Unit = {11 val n→ 3 = 3 //@n=1, 512 val scaled = Config.scale(n3)1314 println("limit=" + Config.limit)def scale(n: Int): Int =
4 def scale(n3: Int): Int = {5 n3 * limit106 }7}scaled ← 30
11 val n = 3 //@n=1, 512 val scaled→ 30 = Config.scale(n3)1314 println("limit=" + Config.limit)15 println("scaled=" + scaled30)16 }17}outputlimit=10 scaled=30
n ← 1
9object Main {10 def main(args: Array[String]): Unit = {11 val n→ 1 = 112 val scaled = Config.scale(n1)1314 println("limit=" + Config.limit)def scale(n: Int): Int =
4 def scale(n1: Int): Int = {5 n1 * limit106 }7}scaled ← 10
11 val n = 112 val scaled→ 10 = Config.scale(n1)1314 println("limit=" + Config.limit)15 println("scaled=" + scaled10)16 }17}outputlimit=10 scaled=10
n ← 5
9object Main {10 def main(args: Array[String]): Unit = {11 val n→ 5 = 512 val scaled = Config.scale(n5)1314 println("limit=" + Config.limit)def scale(n: Int): Int =
4 def scale(n5: Int): Int = {5 n5 * limit106 }7}scaled ← 50
11 val n = 512 val scaled→ 50 = Config.scale(n5)1314 println("limit=" + Config.limit)15 println("scaled=" + scaled50)16 }17}outputlimit=10 scaled=50