Search code examples
scalacompanion-object

"Static" field in Scala companion object


Can I check the value of field in companion object without referring to class' actual object?

I'd like to store a static counter, increase it everytime new object of that class is created and be able to check it's value without using object itself, is this possible?


Solution

  • Is this what you want?

       object Foo {
            private var counter = 0
            private def increment = {
               counter += 1; 
               counter
            }
        }
    
        class Foo {
            val i = Foo.increment
            println(i)
        }