Objetos y clases de Kotlin

Kotlin es compatible con la programación funcional y orientada a objetos. En artículos anteriores, aprendimos sobre funciones, funciones de orden superior y lambdas que representan a Kotlin como un lenguaje funcional. Aquí, aprenderemos sobre los conceptos básicos de programación orientada a objetos que representan a Kotlin como un lenguaje de programación orientado a objetos. 

Lenguaje de programación orientado a objetos 

Clase y Objetos son los conceptos básicos del lenguaje de programación orientado a objetos. Estos soportan los conceptos OOP de herencia, abstracción, etc. 

Clase

Al igual que Java, la clase es un modelo para objetos que tienen propiedades similares. Necesitamos definir una clase antes de crear un objeto y la palabra clave class se usa para definir una clase. La declaración de clase consiste en el nombre de la clase, el encabezado de la clase y el cuerpo de la clase entre llaves. 

Sintaxis de la declaración de clase:  

class className {      // class header
   // property
   // member function
}
  • Nombre de clase: cada clase tiene un nombre específico 
  • Encabezado de clase: el encabezado consta de parámetros y constructores de una clase 
  • Cuerpo de la clase: rodeado de llaves, contiene funciones miembro y otras propiedades 

Tanto el encabezado como el cuerpo de la clase son opcionales; si no hay nada entre llaves, entonces se puede omitir el cuerpo de la clase.  

class emptyClass

Si queremos proporcionar un constructor, debemos escribir un constructor de palabras clave justo después del nombre de la clase. 

Creando constructor:  

class className constructor(parameters) {    
   // property
   // member function
}

Ejemplo de clase Kotlin: 

Kotlin

class employee {
    // properties
    var name: String = ""
    var age: Int = 0
    var gender: Char = 'M'
    var salary: Double = 0.toDouble()
    
      // member functions
       fun name(){
 
    }
    fun age() {
 
    }
    fun salary(){
 
    }
}

Objeto

Es una unidad básica de la Programación Orientada a Objetos y representa las entidades de la vida real, que tienen estados y comportamiento. Los objetos se utilizan para acceder a las propiedades y funciones miembro de una clase. En Kotlin, podemos crear múltiples objetos de una clase. Un objeto consta de:

  • Estado : Está representado por los atributos de un objeto. También refleja las propiedades de un objeto. 
  • Comportamiento : Está representado por los métodos de un objeto. También refleja la respuesta de un objeto a otros objetos. 
  • Identidad : Da un nombre único a un objeto y permite que un objeto interactúe con otros objetos.
     

Crear un objeto

Podemos crear un objeto usando la referencia de la clase. 

var obj = className()

Accediendo a la propiedad de la clase:

Podemos acceder a las propiedades de una clase usando un objeto. Primero, cree un objeto usando la referencia de clase y luego acceda a la propiedad. 

obj.nameOfProperty

Accediendo a la función miembro de la clase:

Podemos acceder a la función miembro de la clase usando el objeto. 

obj.funtionName(parameters)

Programa Kotlin para crear múltiples objetos y acceder a la propiedad y función miembro de la clase:

Kotlin

class employee {
   
      // Constructor Declaration of Class
 
    var name: String = ""
    var age: Int = 0
    var gender: Char = 'M'
    var salary: Double = 0.toDouble()
 
    fun insertValues(n: String, a: Int, g: Char, s: Double) {
        name = n
        age = a
        gender = g
        salary = s
        println("Name of the employee: $name")
        println("Age of the employee: $age")
        println("Gender: $gender")
        println("Salary of the employee: $salary")
    }
     
    fun insertName(n: String) {
        this.name = n
    }
 
}
fun main(args: Array<String>) {
    // creating multiple objects
    var obj = employee()
     
    // object 2 of class employee
    var obj2 = employee()
 
    //accessing the member function
    obj.insertValues("Praveen", 50, 'M', 500000.00)
 
    // accessing the member function
    obj2.insertName("Aliena")
 
    // accessing the name property of class
    println("Name of the new employee: ${obj2.name}")
 
}

Producción:  

Name of the employee: Praveen
Age of the employee: 50
Gender: M
Salary of the employee: 500000.0
Name of the new employee: Aliena

Publicación traducida automáticamente

Artículo escrito por Praveenruhil y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *