Dichiarazione delle data class
Classi modello concise
Dichiarazione delle data class è una lezione Kotlin Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Kotlin Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Kotlin Academy include 4 lezioni in totale.
Classi per contenere dati
Molte classi servono solo a raggruppare alcuni valori: un utente, un punto, un risultato.
Kotlin offre la data class, un modo conciso per dichiarare queste classi modello con molte funzionalità generate automaticamente.
Dichiarare una data class
Aggiunga la parola chiave data prima di class ed elenchi le proprietà nel costruttore.
Quella singola riga fornisce un modello completo.
data class User(val name: String, val age: Int)
fun main() {
val u = User("Alice", 30)
println(u.name)
println(u.age)
}toString automatico
Una data class genera automaticamente un toString() leggibile. Stampando l'oggetto vengono mostrati il nome della classe e i valori delle proprietà.
Lo confronti con una classe normale, che stamperebbe un hash criptico.
data class User(val name: String, val age: Int)
fun main() {
val u = User("Bob", 25)
println(u)
}Le proprietà sono obbligatorie
Una data class deve dichiarare almeno una proprietà nel costruttore primario.
Ogni parametro dovrebbe essere val o var, così da diventare una proprietà utilizzabile dalle funzioni generate.
data class Point(val x: Int, val y: Int)
fun main() {
val p = Point(3, 4)
println(p)
}Proprietà val e var
Usi val per le proprietà di sola lettura e var per quelle modificabili.
Di solito si preferiscono le data class immutabili, perché sono più facili da comprendere e gestire.
data class Counter(var count: Int)
fun main() {
val c = Counter(0)
c.count = 5
println(c)
}Valori predefiniti dei parametri
Come qualsiasi costruttore, una data class può avere valori predefiniti.
In questo modo chi la utilizza può omettere i parametri che non deve impostare.
data class User(val name: String, val active: Boolean = true)
fun main() {
val u = User("Mia")
println(u)
}Argomenti denominati
Combini le data class con gli argomenti denominati per ottenere una costruzione chiara e autoesplicativa.
È particolarmente utile quando diverse proprietà condividono lo stesso tipo.
data class Rect(val width: Int, val height: Int)
fun main() {
val r = Rect(width = 10, height = 5)
println(r)
}Aggiungere metodi
Una data class può comunque avere un corpo con funzioni proprie e proprietà calcolate.
Le funzioni generate coesistono con tutto ciò che aggiunge.
data class Circle(val radius: Double) {
fun area(): Double = 3.14159 * radius * radius
}
fun main() {
val c = Circle(2.0)
println(c.area())
}Proprietà esterne al costruttore
Solo le proprietà del costruttore primario vengono utilizzate dalle funzioni generate.
Una proprietà dichiarata nel corpo fa parte dell'oggetto, ma viene ignorata da toString, equals e simili.
data class User(val name: String) {
var nickname: String = ""
}
fun main() {
val u = User("Alex")
u.nickname = "Al"
println(u) // nickname not shown
println(u.nickname)
}Quando usare le data class
Scelga una data class quando un oggetto serve principalmente a contenere valori:
- DTO e modelli API
- Coordinate, intervalli, risultati
- Raggruppamenti di configurazione
Le eviti per le classi progettate attorno a comportamenti complessi o all'ereditarietà.
Tutto insieme
Una data class è una dichiarazione compatta di un modello:
- Aggiungere il prefisso
dataed elencare le proprietà - Ottenere gratuitamente
toString,equals,hashCode,copy - Supportare valori predefiniti, argomenti denominati e metodi aggiuntivi
data class Book(val title: String, val pages: Int = 0)
fun main() {
val b = Book(title = "Kotlin", pages = 300)
println(b)
}Verifica rapida
Verifichi la comprensione della dichiarazione delle data class.
Riepilogo
Ha imparato a dichiarare le data class:
- La parola chiave
datagenera le funzioni standard - Le proprietà del costruttore determinano il comportamento generato
- I valori predefiniti e gli argomenti denominati le rendono flessibili
Successivamente esaminerà in dettaglio le funzioni generate copy ed equals.
Domande Frequenti
La lezione «Dichiarazione delle data class» è gratuita?
Sì — il testo completo di «Dichiarazione delle data class» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Kotlin Academy, passa a CoddyKit PRO. Il corso Kotlin Academy include 4 lezioni in totale.
Cosa imparerò in «Dichiarazione delle data class»?
Classi modello concise Eserciti Kotlin Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Kotlin Academy?
Non è richiesta alcuna esperienza precedente. Kotlin Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Dichiarazione delle data class»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Kotlin Academy?
Sì. Ogni lezione Kotlin Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Dichiarazione delle data class
- copy ed equals
- Dichiarazioni destrutturate
- Data class nelle collezioni