Создание экземпляров
Часть раздела Объектно-ориентированное программирование путешествия по JavaScript на Coddy — урок 12 из 56.
После определения класса вы можете создавать объекты на основе этого класса, используя ключевое слово new. Эти объекты называются экземплярами.
Допустим, у нас есть простой класс Person:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
return `Hello, my name is ${this.name}`;
}
}Создайте экземпляр класса Person:
const john = new Person("John", 30);После выполнения вышеуказанного кода john является экземпляром класса Person с:
- свойством
name, установленным в "John" - свойством
age, установленным в 30
Вы можете обращаться к свойствам и методам экземпляра:
console.log(john.name); // Выводит: John
console.log(john.greet()); // Выводит: Hello, my name is JohnВы можете создать несколько экземпляров одного и того же класса:
const sarah = new Person("Sarah", 25);
console.log(sarah.name); // Выводит: SarahЗадание
Вам дан класс Student. Ваша задача — создать два экземпляра студента в файле driver.js:
- Создайте
student1с именем "Sarah" и оценкой 85 - Создайте
student2с именем "Mike" и оценкой 92
Шпаргалка
Чтобы создать экземпляр класса, используйте ключевое слово new:
const john = new Person("John", 30);Обращайтесь к свойствам и методам экземпляра, используя точечную нотацию:
console.log(john.name); // Выводит: John
console.log(john.greet()); // Выводит: Hello, my name is JohnВы можете создать несколько экземпляров одного и того же класса:
const sarah = new Person("Sarah", 25);
console.log(sarah.name); // Выводит: SarahПопробуйте сами
import { Student } from './student.js';
// TODO: Создайте экземпляр класса Student с именем student1, именем "Sarah" и оценкой 85
// TODO: Создайте экземпляр класса Student с именем student2, именем "Mike" и оценкой 92
// Тестовый код - не изменять
console.log(student1.name); // Должно вывести "Sarah"
console.log(student2.grade); // Должно вывести 92В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Объектно-ориентированное программирование
1Объекты и ключевое слово this
Краткий обзор: ОбъектыДобавление методов в объектыПонимание ключевого слова thisФункции-конструкторыКлючевое слово newИтоговое испытание7Наследование и ключевое слово extends
НаследованиеОтношение «is-a»Ключевое слово extendsМетод super()Наследование свойств и методовИтоговое испытание10Полиморфизм
Что такое полиморфизм?Переопределение унаследованных методовИспользование superИтоговое задание13Композиция против наследования
Отношения «has-a» и «is-a»Ограничения глубокого наследованияСоздание объектов2Организация кода
Что такое модули?Экспорт с помощью exportИмпорт с помощью importDefault против именованных экспортов5Инкапсуляция и доступ
ИнкапсуляцияПубличные и приватные поля классовПриватные методыЗадание на повторение8Организация кода ООП
Организация классов в модули11Проект: Отрисовщик фигур
Настройка: Класс Shape и экспортНаследование класса Circle14Система управления библиотекой
Проектирование библиотекиКласс Book с использованием композиции6Проект: Простой банковский счет
Класс BankAccountПополнение и снятие средств9Статические методы и свойства
Уровень класса против уровня экземпляраСтатические свойстваСтатические вспомогательные методыЗадание на закрепление