Учитывая следующий фрагмент Scala:
case class Foo(v1: String, v2: Int, v3: Any)
def inspect(p: Product) =
(0 until p.productArity).foreach(i => println(p.productElement(i)))
inspect(Foo("Moin", 77, null))
Означает ли здесь вызов inspect ()
, что используется отражение (каким-либо образом)?
Я бы хотел каким-то образом иметь доступ к полям case-класса, не имея чтобы явно ссылаться на них, например, с помощью foo.v1
, и я бы предпочел решение, которое не требует отражения, поскольку я ожидаю, что это повлечет за собой некоторые накладные расходы.