Luokkasyntaksin esittely: constructor, metodit, static ja extends
Tutustu rauhallisesti luokkasyntaksiin: constructoriin, ilmentymämetodeihin, static-apufunktioihin ja yksinkertaiseen extends-perintään
Luokkasyntaksin esittely: constructor, metodit, static ja extends on ilmainen JavaScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/2. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu JavaScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. JavaScript Academy-kurssilla on yhteensä 2 oppituntia.
Johdanto class-syntaksiin
Tavoite: Tutustukaa siihen, miten class-syntaksi liittyy prototyyppeihin.
- constructor alustamiseen
- methods prototyypissä
- static-apuohjelmat luokassa
- extends yksinkertaiseen periytymiseen

Constructor ja metodi
constructor suoritetaan, kun käytetään new-operaattoria. Luokan rungossa määritetyt metodit ovat kaikkien instanssien yhteisiä (prototyypissä).
// Class with a constructor and an instance method
class Counter {
constructor(start = 0) {
// Initialize fields
this.value = start;
}
// Instance method (lives on the prototype)
inc() {
this.value = this.value + 1;
console.log("Now:", this.value);
}
}
const c = new Counter(1);
c.inc();
c.inc();

Prototyypin jakaminen
Luokkasyntaksin instanssimetodit ovat prototyyppimetodeja, joten samaa funktiota käytetään uudelleen.
// Prototype sharing demo
class Greeter {
say(name) {
console.log("Hello,", name);
}
}
const g1 = new Greeter();
const g2 = new Greeter();
// Same function reference for both instances
console.log("Same method?", g1.say === g2.say);

static-metodien perusteet
static-metodeja kutsutaan itse luokassa, ei instansseissa.
// Static method: lives on the class, not instances
class MathBox {
static double(n) {
return n * 2;
}
}
console.log("Static call:", MathBox.double(4));
const m = new MathBox();
// @ts-ignore (conceptually): next line would be undefined in JS
console.log("Instance has static?", typeof m.double);

Yksinkertainen periytyminen
extends muodostaa prototyyppiketjun. Kutsukaa yläluokan metodia super-avainsanalla.
// Inheritance with extends and super
class Animal {
speak() {
console.log("...");
}
}
class Dog extends Animal {
speak() {
// Optionally call parent method
super.speak();
console.log("Woof");
}
}
const d = new Dog();
d.speak();

Luokkia koskevat vinkit
Vinkit:
- Pitäkää luokat pieninä: muutama kenttä ja metodi riittää.
- Suosikaa luokan rungossa määritettyjä instanssimetodeja (ne jaetaan prototyypin kautta).
- Käyttäkää static-määrettä puhtaille apuohjelmille, jotka eivät liity instanssiin.

Luokan metodien sijoitteluvisa
Pikatarkistus: Jaetun metodin sijoittelu.

Kertaus
Kertaus: Loitte luokan, jossa on constructor, kirjoititte jaettuja instanssimetodeja, lisäsitte static-apuohjelman ja laajensitte perusluokkaa super-avainsanalla.

Opi JavaScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 59
- Oppitunnit
- 200
Usein kysytyt kysymykset
Onko oppitunti ”Luokkasyntaksin esittely: constructor, metodit, static ja extends” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa JavaScript Academy-oppimispolun 3 oppituntia, myös oppitunnin “Luokkasyntaksin esittely: constructor, metodit, static ja extends”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. JavaScript Academy-kurssilla on yhteensä 2 oppituntia.
Mitä opin oppitunnilla ”Luokkasyntaksin esittely: constructor, metodit, static ja extends”?
Tutustu rauhallisesti luokkasyntaksiin: constructoriin, ilmentymämetodeihin, static-apufunktioihin ja yksinkertaiseen extends-perintään Harjoittelet JavaScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni JavaScript Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin JavaScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/2.
Kuinka kauan ”Luokkasyntaksin esittely: constructor, metodit, static ja extends”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä JavaScript Academy-oppitunnilla?
Kyllä. Jokainen JavaScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Prototyyppiketju ja omien ominaisuuksien perusteet
- Luokkasyntaksin esittely: constructor, metodit, static ja extends