Mikä on luokka?
Luokka
Luokka on olio-ohjelmoinnin (OOP) peruskäsite. Se tarkoittaa mallipohjaa olioiden luomiseen. Luokka koostuu kentistä (data) ja metodeista (toiminta). Tarkastellaan luokkaa Dog
, jossa kentät (data) sisältävät tietoa koiran name
- ja age
-arvoista, ja metodi (toiminta) saa koiran esittelemään itsensä ja kertomaan nimensä:
Dog.java
12345678class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } }
Tarkastellaan, mitkä osat muodostavat datan (kentät) ja mitkä kuvaavat käyttäytymistä (metodit):
Kuten kaaviosta näemme, luokassa on kenttiä, joita ei ole alustettu luokan sisällä, sekä metodi, jota ei vielä kutsuta missään. Luodaan Dog
-luokan olio pääluokkaan ja alustetaan sen kentät:
Main.java
1234567public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; } }
Loimme olion Dog
-luokasta ja annoimme sille nimeksi dog
.
Syntaksi olion luomiseksi luokasta on:
ClassName objectName = new ClassName();
Alustimme myös olion ominaisuudet asettamalla kentille arvot.
Koiramme nimi on Brian
ja ikä on 13
.
Syntaksi olion kenttien alustamiseen on:
objectName.fieldName = value;
Nyt meillä on Dog
-luokan olio, jonka kentät on alustettu.
Seuraavaksi kutsutaan metodia Dog
-luokastamme:
Main.java
1234567891011121314151617181920package com.example; class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } } public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; dog.introduce(); } }
Onnistuneesti kutsuttiin metodia Dog
-luokasta käyttämällä kyseistä metodia Dog
-olion kautta. Saatat huomata saman syntaksin, kun kutsuimme aiemmin metodeja String
-luokasta.
1. Kuinka luokka määritellään?
2. Tulisiiko meidän luoda uusi luokka toisen luokan sisälle?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 2.63
Mikä on luokka?
Pyyhkäise näyttääksesi valikon
Luokka
Luokka on olio-ohjelmoinnin (OOP) peruskäsite. Se tarkoittaa mallipohjaa olioiden luomiseen. Luokka koostuu kentistä (data) ja metodeista (toiminta). Tarkastellaan luokkaa Dog
, jossa kentät (data) sisältävät tietoa koiran name
- ja age
-arvoista, ja metodi (toiminta) saa koiran esittelemään itsensä ja kertomaan nimensä:
Dog.java
12345678class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } }
Tarkastellaan, mitkä osat muodostavat datan (kentät) ja mitkä kuvaavat käyttäytymistä (metodit):
Kuten kaaviosta näemme, luokassa on kenttiä, joita ei ole alustettu luokan sisällä, sekä metodi, jota ei vielä kutsuta missään. Luodaan Dog
-luokan olio pääluokkaan ja alustetaan sen kentät:
Main.java
1234567public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; } }
Loimme olion Dog
-luokasta ja annoimme sille nimeksi dog
.
Syntaksi olion luomiseksi luokasta on:
ClassName objectName = new ClassName();
Alustimme myös olion ominaisuudet asettamalla kentille arvot.
Koiramme nimi on Brian
ja ikä on 13
.
Syntaksi olion kenttien alustamiseen on:
objectName.fieldName = value;
Nyt meillä on Dog
-luokan olio, jonka kentät on alustettu.
Seuraavaksi kutsutaan metodia Dog
-luokastamme:
Main.java
1234567891011121314151617181920package com.example; class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } } public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; dog.introduce(); } }
Onnistuneesti kutsuttiin metodia Dog
-luokasta käyttämällä kyseistä metodia Dog
-olion kautta. Saatat huomata saman syntaksin, kun kutsuimme aiemmin metodeja String
-luokasta.
1. Kuinka luokka määritellään?
2. Tulisiiko meidän luoda uusi luokka toisen luokan sisälle?
Kiitos palautteestasi!