0Pricing
Android Academy · Lezione

Classi e proprietà

Modelli i dati con le classi.

Classi e proprietà è una lezione Android Academy gratuita su CoddyKit. Questa è la lezione 2 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 Android Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Android Academy include 4 lezioni in totale.

Che cos'è una classe

Una classe è un modello per la creazione di oggetti. Raggruppa dati e comportamento correlati in un unico tipo.

Ad esempio, una classe Dog potrebbe descrivere il nome, l'età e l'abbaiare di ogni cane.

Dichiarare una classe

Si dichiara una classe con la parola chiave class e un nome. I nomi delle classi utilizzano la convenzione PascalCase.

Una classe vuota è perfettamente valida; può persino omettere le parentesi graffe.

class Dog

fun main() {
    println("Class declared")
}

Creare un oggetto

Un oggetto (o istanza) è un'entità concreta costruita a partire da una classe. In Kotlin se ne crea uno chiamando il nome della classe come se fosse una funzione.

Noti che non esiste la parola chiave new.

class Dog

fun main() {
    val rex = Dog()
    println(rex)
}

Proprietà

Una proprietà è una variabile appartenente a una classe. La dichiari all'interno del corpo della classe con val o var.

Utilizzi val per i valori che non cambiano mai e var per quelli che possono cambiare.

class Dog {
    var name: String = "Rex"
    var age: Int = 3
}

fun main() {
    val d = Dog()
    println(d.name)
}

Accesso alle proprietà

Usi la notazione con il punto per leggere o modificare una proprietà: object.property.

Poiché name è una var, può assegnarle un nuovo valore.

class Dog {
    var name: String = "Rex"
}

fun main() {
    val d = Dog()
    d.name = "Buddy"
    println(d.name)
}

Proprietà val e var

Una proprietà val è di sola lettura dopo essere stata impostata. Provare a riassegnarle un valore causa un errore di compilazione.

Una proprietà var può essere riassegnata tutte le volte che desidera.

class Circle {
    val pi = 3.14
    var radius = 1.0
}

fun main() {
    val c = Circle()
    c.radius = 5.0
    println(c.radius)
}

Metodi

Una funzione dichiarata all'interno di una classe si chiama metodo. I metodi possono usare direttamente le proprietà della classe.

Qui bark usa la proprietà name.

class Dog {
    var name: String = "Rex"
    fun bark() {
        println(name + " says Woof!")
    }
}

fun main() {
    Dog().bark()
}

Più oggetti

Ogni oggetto ha la propria copia delle proprietà. Modificare un oggetto non influisce sugli altri.

Qui a e b conservano nomi distinti.

class Dog {
    var name: String = ""
}

fun main() {
    val a = Dog()
    val b = Dog()
    a.name = "Rex"
    b.name = "Max"
    println(a.name + " " + b.name)
}

Valori predefiniti delle proprietà

Ogni proprietà deve avere un valore. Può impostare un valore predefinito appropriato quando la dichiara.

In questo modo un nuovo oggetto parte da uno stato noto invece di essere undefined.

class Counter {
    var count: Int = 0
    fun increment() {
        count = count + 1
    }
}

fun main() {
    val c = Counter()
    c.increment()
    println(c.count)
}

Combinare proprietà e metodi

Una classe è particolarmente utile quando proprietà e metodi collaborano. Un metodo può leggere e aggiornare le proprietà dell'oggetto stesso.

Qui haveBirthday incrementa la proprietà age ogni volta che viene chiamato.

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)
}

Le classi modellano elementi reali

Le classi consentono di modellare in codice concetti del mondo reale.

  • Le proprietà descrivono ciò che qualcosa possiede.
  • I metodi descrivono ciò che può fare.

In Android, schermate, pulsanti e view model sono tutti costruiti a partire da classi.

Verifica rapida

Verifichi la sua comprensione di classi e proprietà.

Riepilogo

Ha imparato che una classe è un modello e un oggetto è un'istanza costruita a partire da quel modello.

Le proprietà memorizzano dati con val o var, i metodi aggiungono comportamenti e la notazione con il punto consente di accedervi. Ora configurerà le proprietà in modo ordinato usando i costruttori.

Domande Frequenti

La lezione «Classi e proprietà» è gratuita?

Sì — il testo completo di «Classi e proprietà» è 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 Android Academy, passa a CoddyKit PRO. Il corso Android Academy include 4 lezioni in totale.

Cosa imparerò in «Classi e proprietà»?

Modelli i dati con le classi. Eserciti Android 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 Android Academy?

Non è richiesta alcuna esperienza precedente. Android 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 2 di 4.

Quanto tempo richiede la lezione «Classi e proprietà»?

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 Android Academy?

Sì. Ogni lezione Android 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

  1. Dichiarare funzioni
  2. Classi e proprietà
  3. Costruttori e init
  4. Classi di dati
← Torna a Android Academy