Tạo instance
Thuộc phần Lập trình hướng đối tượng trong hành trình JavaScript của Coddy. Bài học 12 trên 56.
Sau khi định nghĩa một lớp, bạn có thể tạo các đối tượng dựa trên lớp đó bằng từ khóa new. Những đối tượng này được gọi là các instance.
Giả sử chúng ta có một lớp Person đơn giản:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
return `Hello, my name is ${this.name}`;
}
}Tạo một đối tượng của lớp Person:
const john = new Person("John", 30);Sau khi chạy đoạn code trên, john là một đối tượng thuộc lớp Person, có:
- thuộc tính
nameđược đặt thành "John" - thuộc tính
ageđược đặt thành 30
Bạn có thể truy cập các thuộc tính và phương thức của đối tượng:
console.log(john.name); // Đầu ra: John
console.log(john.greet()); // Đầu ra: Hello, my name is JohnBạn có thể tạo nhiều đối tượng từ cùng một lớp:
const sarah = new Person("Sarah", 25);
console.log(sarah.name); // Đầu ra: SarahThử thách
Bạn được cung cấp một lớp Student. Nhiệm vụ của bạn là tạo hai instance student trong tệp driver.js:
- Tạo
student1với tên "Sarah" và điểm 85 - Tạo
student2với tên "Mike" và điểm 92
Tự làm thử
import { Student } from './student.js';
// TODO: Tạo một instance của lớp (class) Student tên là student1 với tên "Sarah" và điểm 85
// TODO: Tạo một instance của lớp Student tên là student2 với tên "Mike" và điểm 92
// Code kiểm thử, đừng sửa
console.log(student1.name); // Phải in ra "Sarah"
console.log(student2.grade); // Phải in ra 92Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Lập trình hướng đối tượng
1Đối tượng và từ khóa this
Ôn nhanh: đối tượngThêm phương thức vào đối tượngTìm hiểu từ khóa thisHàm khởi tạoTừ khóa newThử thách ôn tập7Kế thừa và từ khóa extends
Kế thừaQuan hệ "là một"Từ khóa extendsPhương thức super()Kế thừa thuộc tính và phương thứcThử thách ôn tập13Kết hợp hay kế thừa
Quan hệ “có một” và “là một”Những hạn chế của kế thừa nhiều tầngXây dựng đối tượng5Đóng gói và quyền truy cập
Đóng góiTrường công khai và trường riêng tưPhương thức riêng tưThử thách ôn tập8Tổ chức code OOP
Tổ chức các lớp thành module11Dự án: Trình hiển thị hình dạng
Thiết lập: lớp Hình dạng và xuấtKế thừa lớp Hình trònGhi đè và phương thức diện tíchBộ đếm hình dạng tĩnh6Dự án: Tài khoản ngân hàng đơn giản
Lớp BankAccountGửi tiền và rút tiềnSố dư dưới dạng thuộc tính riêng tư9Phương thức và thuộc tính tĩnh
Cấp lớp và cấp instanceThuộc tính tĩnhPhương thức tiện ích tĩnhThử thách ôn tậpTự luyện tập: Trình biên dịch JavaScript online