Beesbeesbees

Jelkov Ahn·2021년 10월 5일
0
post-thumbnail

<Bee.js>

const Grub = require('./Grub');

class Bee extends Grub {
  constructor(){
    super();
    this.age= 5;
    this.color= 'yellow';
    this.job = 'Keep on growing';
  }
  // TODO..
}

module.exports = Bee;

상속을 하기 위해서 class에 extends를 통해서 Grup 속성을 상속 받는다.
super() 키워드를 통해서, 상위 클래스의 생성자를 호출 합니다.

<ForagerBee.js>

const Bee = require('./Bee');

class ForagerBee extends Bee {
  constructor(){
    super();
    this.age = 10;
    this.job = 'find pollen';
    this.canFly = true;
    this.treasureChest = [];
  }
  forage(보물){
    this.treasureChest.push(보물);
  }
  // TODO..
}

module.exports = ForagerBee;

상속을 하기 위해서 class에 extends를 통해서 Bee 속성을 상속 받는다.
super() 키워드를 통해서, 상위 클래스의 생성자를 호출 합니다.

forage 메소드에 파라미터를 넣으면, 다향성으로 작동을 할 수 있다.

<Grub.js>

class Grub {
  constructor(){
    this.age = 0;
    this.color= 'pink';
    this.food='jelly';
  }
  eat(){
    return 'Mmmmmmmmm jelly'
  }
  // TODO..
}

module.exports = Grub;

<HoneyMakerBee.js>

const Bee = require('./Bee');

class HoneyMakerBee extends Bee {
  constructor(){
    super();
    this.age = 10;
    this.job = 'make honey';
    this.honeyPot = 0;
  }
  makeHoney(){
    this.honeyPot+=1
  }
  giveHoney(){
    this.honeyPot-=1
  }
  // TODO..
}

module.exports = HoneyMakerBee;
profile
끝까지 ... 가면 된다.

0개의 댓글