- 01Setting up (what you'll need)
- 02Your first output (println)
- 03Variables (val and var)
- 04Type annotations and basic types
- 05Branching (the if expression)
- 06Repeating (the for expression)
- 07Writing your own function
- 08Repeating (the while loop)
- 09Working with lists (List)
- 10Working with maps (Map)
- 11Classes (object orientation)
- 12case class
- 13Inheritance and traits
- 14Pattern matching (the match expression)
- 15The Option type (null safety)
- 16Higher-order functions, map and filter
- 17object (singletons)
- 18Strings and string interpolation
- 19for comprehensions
- 20[Project] Build a small inventory system
Classes (object orientation)
This lesson covers the basics of writing a class in Scala.
A class is defined as class Name(args), and the constructor arguments can be used directly as fields. Methods are defined with def.
The sample code defines class Animal(val name: String) with a speak() method that returns the sound it makes.
A common early stumble is just how brief the constructor is. Developers coming from Java tend to define one separately, but in Scala the () after the class name is the constructor.
In professional work, this concise class definition lets you express data and behaviour together in very little code.
๐งช This site can't compile or run Scala directly, so it checks on the spot whether what you typed matches the reference code (scoring happens entirely in your browser โ nothing is sent anywhere).
