Classes and Objects
Companion Factory
Use a companion object to create a class instance.
Companion Factory
CompanionFactory.scala
class Ticket(val id: Int, val label: String) {
override def toString: String = "[ticket]"
}
object Ticket {
val Prefix = "T"
def make(id: Int): Ticket = {
val label = "T" + id
new Ticket(id, label)
}
}
object Main {
def main(args: Array[String]): Unit = {
val id =
val ticket = Ticket.make(id)
println("id=" + ticket.id)
println("label=" + ticket.label)
}
}
class Ticket(val id: Int, val label: String) {
override def toString: String = "[ticket]"
}
object Ticket {
val Prefix = "T"
def make(id: Int): Ticket = {
val label = "T" + id
new Ticket(id, label)
}
}
object Main {
def main(args: Array[String]): Unit = {
val id =
val ticket = Ticket.make(id)
println("id=" + ticket.id)
println("label=" + ticket.label)
}
}
class Ticket(val id: Int, val label: String) {
override def toString: String = "[ticket]"
}
object Ticket {
val Prefix = "T"
def make(id: Int): Ticket = {
val label = "T" + id
new Ticket(id, label)
}
}
object Main {
def main(args: Array[String]): Unit = {
val id =
val ticket = Ticket.make(id)
println("id=" + ticket.id)
println("label=" + ticket.label)
}
}
companion-factory
A companion object can hold constants and factory methods for a class with the same name.