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)
}
题
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?
解决方案
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)
}
其他提示
import java.util.concurrent.atomic.AtomicInteger
object Foo {
val counter = new AtomicInteger(0)
}
class Foo {
val i = Foo.counter.incrementAndGet()
println(i)
}