Clases y propiedades
Modele datos con clases
Clases y propiedades es una lección gratuita de Android Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Android Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Android Academy incluye 4 lecciones en total.
¿Qué es una clase?
Una clase es un esquema para crear objetos. Agrupa datos y comportamiento relacionados en un solo tipo.
Por ejemplo, una clase Dog podría describir el nombre y la edad de cada perro, además del ladrido que emite.
Declarar una clase
Declare una clase con la palabra clave class y un nombre. Los nombres de las clases utilizan PascalCase.
Una clase vacía es perfectamente válida; incluso puede omitir las llaves.
class Dog
fun main() {
println("Class declared")
}Crear un objeto
Un objeto (o instancia) es una entidad real creada a partir de una clase. En Kotlin, se crea llamando al nombre de la clase como si fuera una función.
Observe que no existe ninguna palabra clave new.
class Dog
fun main() {
val rex = Dog()
println(rex)
}Propiedades
Una propiedad es una variable que pertenece a una clase. Declárela dentro del cuerpo de la clase con val o var.
Utilice val para valores que nunca cambian y var para valores que pueden cambiar.
class Dog {
var name: String = "Rex"
var age: Int = 3
}
fun main() {
val d = Dog()
println(d.name)
}Acceder a propiedades
Use la notación de punto para leer o cambiar una propiedad: object.property.
Como name es una var, podemos asignarle un valor nuevo.
class Dog {
var name: String = "Rex"
}
fun main() {
val d = Dog()
d.name = "Buddy"
println(d.name)
}Propiedades val frente a var
Una propiedad val es de solo lectura después de asignarle un valor. Intentar reasignarla provoca un error de compilación.
Una propiedad var se puede reasignar tantas veces como quiera.
class Circle {
val pi = 3.14
var radius = 1.0
}
fun main() {
val c = Circle()
c.radius = 5.0
println(c.radius)
}Métodos
Una función declarada dentro de una clase se denomina método. Los métodos pueden usar directamente las propiedades de la clase.
Aquí, bark usa la propiedad name.
class Dog {
var name: String = "Rex"
fun bark() {
println(name + " says Woof!")
}
}
fun main() {
Dog().bark()
}Varios objetos
Cada objeto tiene su propia copia de las propiedades. Cambiar un objeto no afecta a otro.
Aquí, a y b conservan nombres independientes.
class Dog {
var name: String = ""
}
fun main() {
val a = Dog()
val b = Dog()
a.name = "Rex"
b.name = "Max"
println(a.name + " " + b.name)
}Valores de propiedad predeterminados
Toda propiedad necesita un valor. Puede establecer un valor predeterminado adecuado al declararla.
De este modo, un objeto nuevo comienza en un estado conocido en lugar de quedar como undefined.
class Counter {
var count: Int = 0
fun increment() {
count = count + 1
}
}
fun main() {
val c = Counter()
c.increment()
println(c.count)
}Combinar propiedades y métodos
Una clase resulta más útil cuando las propiedades y los métodos trabajan juntos. Un método puede leer y actualizar las propiedades del propio objeto.
Aquí, haveBirthday aumenta la propiedad age cada vez que se llama.
class Dog {
var name: String = "Rex"
var age: Int = 1
fun haveBirthday() {
age = age + 1
}
}
fun main() {
val d = Dog()
d.haveBirthday()
println(d.age)
}Las clases modelan cosas reales
Las clases le permiten modelar ideas del mundo real en el código.
- Las propiedades describen lo que algo tiene.
- Los métodos describen lo que puede hacer.
En Android, las pantallas, los botones y los view models se construyen a partir de clases.
Comprobación rápida
Compruebe lo que ha aprendido sobre las clases y las propiedades.
Resumen
Ha aprendido que una clase es un plano y que un objeto es una instancia construida.
Las propiedades almacenan datos con val o var, los métodos añaden comportamiento y la notación de punto permite acceder a ellos. A continuación, configurará las propiedades correctamente mediante constructores.
Preguntas frecuentes
¿La lección «Clases y propiedades» es gratis?
Sí — el texto completo de «Clases y propiedades» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Android Academy, actualiza a CoddyKit PRO. El curso de Android Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Clases y propiedades»?
Modele datos con clases Practicas Android Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Android Academy?
No se requiere experiencia previa. Android Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Clases y propiedades»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Android Academy?
Sí. Cada lección de Android Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Declarar funciones
- Clases y propiedades
- Constructores e init
- Clases de datos