Programación Orientada a Objetos Clases y métodos abstractos en Kotlin(Curso de Kotlin desde cero [67])
Para que las clases y métodos sean abstractos en Kotlin deben cumplir las siguientes características:
- Debe tener por lo menos una clase hijo (osea ser super clase).
- No puede instanciar objetos.
- Sirve solo para heredar métodos y atributos.
Para entender más a fondo las clases abstractas vamos a hacer lo siguiente: - Crear la super-clase Automotores que tendrá como hijos a:
- La clase Gasolina que tendrá el método llantas.
- Tendrá la clase Motocicletas y Autos que tendrá el método llantas que mostrará la cantidad de llantas que usa este automotor
- La clase Diesel que tendrá también el método llantas.
- Tendrá la clase Camiones que tendrá el método llantas que mostrará la cantidad de llantas que usa este automotor.
- La clase Gasolina que tendrá el método llantas.
SUPER-CLASE ABSTRACTA
Automotores (Abstracta)
-llantas()
SUPER-CLASE ABSTRACTA
Gasolina (Abstracta)
-llantas()
CLASES HIJA
Motocicletas
-llantas()
Autos
-llantas()
SUPER-CLASE ABSTRACTA
Diesel (Abstracta)
-llantas()
CLASES HIJA
Camiones
-llantas()
Codigo: https://github.com/programadornovato/CursoKotlin/commit/13a2beb8ea123479a82a4d31c80c79390c2227a3
// src/Automotores.kt abstract class Automotores{ abstract fun llantas() } // src/Autos.kt class Autos:Automotores(){ override fun llantas(){ println("Este auto solo tiene 4 llantitas") } } // src/Camiones.kt class Camiones:Diesel(){ override fun llantas(){ println("Este camion solo tiene 8 llantitas") } } //src/Diesel.kt abstract class Diesel :Automotores(){ abstract override fun llantas() } //src/Gasolina.kt abstract class Gasolina :Automotores(){ abstract override fun llantas() } //src/Motocicletas.kt class Motocicletas:Automotores(){ override fun llantas(){ println("Esta motocileta solo tiene 2 llantitas") } } //src/main.kt import javax.swing.JOptionPane fun main(args:Array<String>){ var m=Motocicletas() m.llantas() var a=Autos() a.llantas() var c=Camiones() c.llantas() }
🎦 Lista de reproducción de este curso: https://www.youtube.com/playlist?list=PLCTD_CpMeEKSjzbsW_zmVNz23GyOVsdbS
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF
🎦 [CURSO] PYTHON PARA PRINCIPIANTES🐍: https://www.youtube.com/playlist?list=PLCTD_CpMeEKRppvi86Dy8CPYZ8-XzN2qu
🔗 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
🎦 Canal de youtube: https://www.youtube.com/c/programadornovato
<<Anterior tutorial Siguiente tutorial >>