Tworzenie instancji
Część sekcji Programowanie obiektowe ścieżki JavaScript w Coddy. Lekcja 12 z 56.
Po zdefiniowaniu klasy możesz tworzyć obiekty na jej podstawie za pomocą słowa kluczowego new. Te obiekty nazywamy instancjami.
Załóżmy, że mamy prostą klasę Person:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
return `Hello, my name is ${this.name}`;
}
}Utwórz instancję klasy Person:
const john = new Person("John", 30);Po wykonaniu powyższego kodu john jest instancją klasy Person z:
- właściwością
nameustawioną na "John" - właściwością
ageustawioną na 30
Możesz uzyskać dostęp do właściwości i metod instancji:
console.log(john.name); // Wyświetla: John
console.log(john.greet()); // Wyświetla: Hello, my name is JohnMożesz utworzyć wiele instancji tej samej klasy:
const sarah = new Person("Sarah", 25);
console.log(sarah.name); // Wyświetla: SarahWyzwanie
Masz daną klasę Student. Twoim zadaniem jest utworzenie dwóch instancji ucznia w pliku driver.js:
- Utwórz
student1o imieniu "Sarah" i ocenie 85 - Utwórz
student2o imieniu "Mike" i ocenie 92
Spróbuj swoich sił
import { Student } from './student.js';
// TODO: Utwórz instancję klasy Student o nazwie student1 z imieniem "Sarah" i oceną 85
// TODO: Utwórz instancję klasy Student o nazwie student2 z imieniem "Mike" i oceną 92
// Kod testowy — nie modyfikuj
console.log(student1.name); // Powinno wyświetlić "Sarah"
console.log(student2.grade); // Powinno wyświetlić 92Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Programowanie obiektowe
1Obiekty i słowo kluczowe this
Szybka powtórka: obiektyDodawanie metod do obiektówZrozumienie słowa kluczowego thisFunkcje konstruktoraSłowo kluczowe newWyzwanie podsumowujące7Dziedziczenie i słowo kluczowe extends
DziedziczenieRelacja „jest rodzajem”Słowo kluczowe extendsMetoda super()Dziedziczenie właściwości i metodWyzwanie podsumowujące10Polimorfizm
Czym jest polimorfizm?Nadpisywanie odziedziczonych metodUżywanie superWyzwanie podsumowujące13Kompozycja a dziedziczenie
Relacja „ma” a relacja „jest”Ograniczenia głębokiego dziedziczeniaTworzenie obiektów2Organizowanie kodu
Czym są moduły?Eksportowanie za pomocą exportImportowanie za pomocą importEksporty domyślne a nazwane5Enkapsulacja i dostęp
EnkapsulacjaPubliczne i prywatne pola klasyMetody prywatneWyzwanie podsumowujące8Organizowanie kodu OOP
Organizowanie klas w moduły11Projekt: Renderer kształtów
Konfiguracja: klasa Shape i eksportDziedziczenie klasy CircleNadpisywanie i metoda obliczania polaStatyczny licznik kształtów14System zarządzania biblioteką
Projektowanie bibliotekiKlasa Book z kompozycjąWalidacja autora książki9Metody i właściwości statyczne
Poziom klasy a poziom instancjiWłaściwości statyczneStatyczne metody pomocniczeWyzwanie podsumowującePoćwicz samodzielnie: Kompilator JavaScript online