Grub
새로운 클래스를 작성하기
class Grub {
constructor() {
this.age = 0;
this.color = "pink";
this.food = "jelly";
};
eat() {
return "Mmmmmmmmm jelly"
}
}
module.exports = Grub;
constructor()
메소드는 Grub
클래스의 생성자를 의미.eat()
은 멤버 메소드. Bee
생성된 클래스에서 속성 바꾸고 상속받기
const Grub = require('./1-Grub');
class Bee extends Grub {
constructor() {
super()
this.age = 5;
this.color = "yellow";
this.job = "Keep on growing"
}
}
module.exports = Bee;
extends
키워드를 통해 상속 받을(Grub
) 클래스를 명시.super
키워드를 통해 상위 클래스의 멤버를 상속받을 수 있다.ForagerBee
forage 메소드에 매개변수(보물) 넣기
const Bee = require('./2-Bee');
class ForagerBee extends Bee {
constructor() {
super()
this.age = 10;
this.job = "find pollen";
this.canFly = true;
this.treasureChest = [];
}
forage(보물) {
this.treasureChest.push(보물)
}
}
module.exports = ForagerBee;
HoneyMakerBee
메서드에 연산자 사용하기
const Bee = require('./2-Bee');
class HoneyMakerBee extends Bee {
constructor() {
super()
this.age = 10
this.job = "make honey"
this.honeyPot = 0
}
makeHoney() {
this.honeyPot++
}
giveHoney() {
this.honeyPot--
}
}
module.exports = HoneyMakerBee;