Android Academy · leksjon

Klasser og egenskaper

Modeller data med klasser.

Leksjon 2 av 413 trinn

Klasser og egenskaper er en gratis leksjon i Android Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Android Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Android Academy inneholder totalt 4 leksjoner.

Hva er en klasse?

En klasse er en mal for å opprette objekter. Den samler relaterte data og funksjonalitet i én type.

En klasse Dog kan for eksempel beskrive navnet og alderen til alle hunder, samt lyden de lager når de bjeffer.

Deklarere en klasse

De deklarerer en klasse med nøkkelordet class og et navn. Klassenavn bruker PascalCase.

En tom klasse er helt gyldig. De kan til og med utelate krøllparentesene.

class Dog

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

Opprette et objekt

Et objekt (eller en instans) er en konkret ting som er bygget fra en klasse. I Kotlin oppretter De et objekt ved å kalle klassenavnet som en funksjon.

Legg merke til at nøkkelordet new ikke brukes.

class Dog

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

Egenskaper

En egenskap er en variabel som tilhører en klasse. Deklarer den inni klassekroppen med val eller var.

Bruk val for verdier som aldri endres, og var for verdier som kan endres.

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

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

Få tilgang til egenskaper

Bruk punktnotasjon til å lese eller endre en egenskap: object.property.

Fordi name er en var, kan vi tilordne den en ny verdi.

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

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

val- kontra var-egenskaper

En val-egenskap er skrivebeskyttet etter at den er angitt. Hvis du prøver å tilordne den en ny verdi, oppstår det en kompileringsfeil.

En var-egenskap kan tilordnes på nytt så mange ganger du vil.

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

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

Metoder

En funksjon som er deklarert i en klasse, kalles en metode. Metoder kan bruke klassens egenskaper direkte.

Her bruker bark-metoden egenskapen name.

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

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

Flere objekter

Hvert objekt har sin egen kopi av egenskapene. Hvis du endrer ett objekt, påvirker det ikke et annet.

Her beholder a og b separate navn.

class Dog {
    var name: String = ""
}

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

Standardverdier for egenskaper

Alle egenskaper trenger en verdi. Du kan angi en fornuftig standardverdi når du deklarerer egenskapen.

På denne måten starter et nytt objekt i en kjent tilstand i stedet for å være udefinert.

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

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

Kombinere egenskaper og metoder

En klasse er mest nyttig når egenskaper og metoder fungerer sammen. En metode kan lese og oppdatere objektets egne egenskaper.

Her øker haveBirthday-metoden egenskapen age hver gang den kalles.

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

Klasser modellerer virkelige ting

Klasser lar deg modellere ideer fra den virkelige verden i kode.

  • Egenskaper beskriver hva noe har.
  • Metoder beskriver hva det kan gjøre.

I Android bygges skjermer, knapper og view-modeller alle fra klasser.

Hurtigsjekk

Test forståelsen din av klasser og egenskaper.

Oppsummering

Du har lært at en klasse er en oppskrift, og at et objekt er en instans som er opprettet fra den.

Egenskaper lagrer data med val eller var, metoder tilfører funksjonalitet, og punktnotasjon brukes for å få tilgang til dem. Deretter skal du sette opp egenskaper på en ryddig måte ved hjelp av konstruktører.

Gratis å komme i gang

Lær deg Kotlin med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
36
Leksjoner
152

Ofte stilte spørsmål

Er leksjonen «Klasser og egenskaper» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Android Academy, inkludert «Klasser og egenskaper», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Android Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Klasser og egenskaper»?

Modeller data med klasser. Du øver på Android Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Android Academy?

Ingen tidligere erfaring er nødvendig. Android Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.

Hvor lang tid tar leksjonen «Klasser og egenskaper»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Android Academy-leksjonen?

Ja. Alle Android Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Deklarer funksjoner
  2. Klasser og egenskaper
  3. Konstruktører og init
  4. Dataklasser
← Tilbake til Android Academy