Para determinar la clase de un objeto Scala usamos el método getClass . Este método devuelve los detalles de la clase, que es la clase principal de la instancia.
A continuación se muestra el ejemplo para determinar la clase de un objeto Scala.
Método de llamada con argumento –
Ejemplo 1:
// Scala program to determine the class of a Scala object // Creating object object Geeks { // Using getClass method def printClass(num: Int*) { println("class: " + num.getClass) } // Main method def main(args: Array[String]) { // Calling parameter with parameter printClass(4, 2) } }
Producción:
class: class scala.collection.mutable.WrappedArray$ofInt
En el ejemplo anterior, llamar al método printClass con parámetro demuestra la clase Scala.
Método de llamada sin argumento –
Ejemplo #2:
// Scala program to determine the class of a Scala object // Creating object object Geeks { // Using getClass method def printClass(num: Int*) { println("class: " + num.getClass) } // Main method def main(args: Array[String]) { // Calling method without parameter printClass() } }
Producción:
class: class scala.collection.immutable.Nil$
En el ejemplo anterior, llamar al método printClass sin parámetro demuestra la clase Scala.
Con métodos get* adicionales:
Ejemplo #3:
// Scala program to show how // the additional get* methods work sealed trait Person class Boy extends Person class Girl extends Person // Creating object object Person { // factory method def getPerson(s: String): Person = if (s == "Boy") new Boy else new Girl } object ObjectCastingTest extends App { val person = Person.getPerson("Boy") // class object_casting.Boy println("person: " + person.getClass) // object_casting.Boy println("person: " + person.getClass.getName) // Boy println("person: " + person.getClass.getSimpleName) // object_casting.Boy println("person: " + person.getClass.getCanonicalName) }
Producción:
person: class Boy person: Boy person: Boy person: Boy
El código anterior muestra cómo funcionan getName, getSimpleName,
y getCanonicalName
funcionan los métodos get* adicionales.
Publicación traducida automáticamente
Artículo escrito por DivyaPareek y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA