Programación Orientada a Objetos, Polimorfismo en Kotlin (Curso de Kotlin desde cero [69])

  • Pili= muchas, Morfismo= formas, osea Polimorfismo = muchas formas
  • En programación orientada a objetos, el polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje que se les envía.
    En este tutorial vamos hacer los siguiente:
  • Crear una clase llamada Vehiculo con los atributos matricula, marca, modelo y un método que muestre los datos del auto.
  • Crear la clase TipoTurismo que hereda de Vehiculo sus atributo mas el atributo propio numeroPuertas, ademas crearemos un método que muestre todos sus datos.
  • Crear la clase TipoFurgoneta que hereda de Vehiculo sus atributo mas el atributo propio carga, ademas crearemos un método que muestre todos sus datos.
  • Crear la clase TipoDeportivo que hereda de Vehiculo sus atributo mas el atributo propio cilindros, además crearemos un método que muestre todos sus datos.
  • En la clase principal crear un arreglo del objeto Vehiculo donde llamaremos los diferentes tipos de clses de tipo Vehiculo

Codigo: https://github.com/programadornovato/CursoKotlin/commit/7e8379ee0c50acc595dbb3773386d28a0f06bc50

///src/Vehiculo.kt
open class Vehiculo (var matricula:String,var marca:String,var modelo:String){
    open fun entregarDatos():String{
        return "matricula=$matricula,marca=$marca,modelo$modelo"
    }
}


///src/main.kt
import javax.swing.JOptionPane
fun main(args:Array<String>){
    var v= arrayOfNulls<Vehiculo>(4)
    v[0]=Vehiculo("XDSDF445","Nissan","2010")
    v[1]=tipoTurismo("XDFGHJ777","Nissan","2018",5)
    v[2]=tipoDeportivo("TTYYHH666","Nissan","2010",8)
    v[3]=tipoFurgoneta("FDSEEW5666","Nissan","2015",20)
    for (i in v.indices){
        println(v[i]!!.entregarDatos())
    }
}




//src/tipoDeportivo.kt 
class tipoDeportivo(matricula:String?,marca:String?,modelo:String?,var cilindros:Int):Vehiculo(matricula!!,marca!!,modelo!!){
    override fun entregarDatos():String{
        return "matricula=$matricula,marca=$marca,modelo$modelo,cilindros=$cilindros"
    }
} 




//src/tipoFurgoneta.kt 
class tipoFurgoneta(matricula:String?,marca:String?,modelo:String?,var carga:Int):Vehiculo(matricula!!,marca!!,modelo!!){
    override fun entregarDatos():String{
        return "matricula=$matricula,marca=$marca,modelo$modelo,carga=$carga"
    }
} 




//src/tipoTurismo.kt 
class tipoTurismo(matricula:String?,marca:String?,modelo:String?,var numeroPuertas:Int):Vehiculo(matricula!!,marca!!,modelo!!){
    override fun entregarDatos():String{
        return "matricula=$matricula,marca=$marca,modelo$modelo,numeroPuertas=$numeroPuertas"
    }
} 

🎦 Lista de reproducción de este curso: https://www.youtube.com/playlist?list=PLCTD_CpMeEKSjzbsW_zmVNz23GyOVsdbS
🎦 Mismo tutorial pero en Java: https://youtu.be/j_e2YPjWNns
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF

🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato

Eugenio Chaparro

Entradas recientes

🟢Editar código de un módulo en Dolibarr [04]

🟢Editar código de un módulo en Dolibarr [04]

En este tutorial vamos editar el código de nuestro módulo personas para poder personalizar algunas…

2 semanas hace
🟢Crear un sub_módulo en Dolibarr [03]

🟢Crear un sub_módulo en Dolibarr [03]

En este tutorial vamos a crear un sub módulo llamado seguridad que será muy parecido…

2 semanas hace
🟢Modificar un módulo en Dolibarr [02]

🟢Modificar un módulo en Dolibarr [02]

En este tutorial aprenderemos a editar el objeto personas del modulo persona que creamos en…

2 semanas hace
🟢Constructor de módulos en Dolibarr

🟢Constructor de módulos en Dolibarr

Como mencionamos anteriormente Dolibarr es un proyecto realizado sobre la base de una política clara:…

2 semanas hace
🟢Tickets en Dolibarr [19]

🟢Tickets en Dolibarr [19]

Los ticket en dolibarr nos ayudan a comunicar inconveniente en nuestros productos y servicios dentro…

2 semanas hace
🟢Agenda en Dolibarr [18]

🟢Agenda en Dolibarr [18]

Las agendas en dolibarr nos ayudan a ver las actividades realizadas en proceso y por…

2 semanas hace