Pergunta

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?

Foi útil?

Solução

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)
    }

Outras dicas

import java.util.concurrent.atomic.AtomicInteger
object Foo {
  val counter = new AtomicInteger(0)
}
class Foo {
  val i = Foo.counter.incrementAndGet()
  println(i)
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top