Zoeeey
Stack flows in you
Zoeeey
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (155)
    • ๐Ÿ’ก UXUI (4)
      • UXUI (2)
      • UI (2)
      • UX (0)
    • ๐ŸŸจ JavaScript (66)
      • ๊ฐœ๋… (42)
      • ์ •๋ฆฌ (2)
      • ๋ฌธ์ œํ’€๊ธฐ (ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค, ์ฝ”๋”ฉ์• ํ”Œ) (15)
      • ์‘์šฉํ•˜์—ฌ ์ž๋™ํ™”or๋ฌธ์ œํ•ด๊ฒฐํ•˜๊ธฐ (2)
      • ๊ธฐํƒ€ (5)
    • โš›๏ธ React (49)
      • ๊ฐœ๋… (27)
      • ๊ฐœ๋…(Redux) (3)
      • ์ •๋ฆฌ (4)
      • ๋ฌธ์ œํ’€๊ธฐ (์ฝ”๋”ฉ์• ํ”Œ: React) (15)
    • ๐Ÿ“˜ TypeScript (10)
      • ๊ฐœ๋… (8)
      • ๋ฌธ์ œํ’€๊ธฐ (์ฝ”๋”ฉ์• ํ”Œ) (2)
    • ๐ŸŒ HTML,CSS (18)
      • ์‹ค๋ฌด์—์„œ ์ž์ฃผ ๋ฐœ์ƒํ•œ ์˜ค๋ฅ˜๋“ค (10)
      • ๋’ค๋Šฆ๊ฒŒ ์•Œ์•„์„œ ๋ผˆ์•„ํ”ˆ ์œ ์šฉํ•œ CSS (6)
      • ๊ธฐํƒ€ ์ž์ฃผ ์“ฐ๋Š” CSS (2)
    • ๐Ÿ’ป CS (8)
      • CS (5)
      • ์ •๊ทœํ‘œํ˜„์‹ (2)
      • Git,Github (1)

ํƒœ๊ทธ

  • axios
  • Ajax
  • json
  • class
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • JavaScript
  • object
  • Props
  • state
  • ์˜ค๋ฅ˜
  • CSS
  • array
  • ์‚ผํ•ญ์—ฐ์‚ฐ์ž
  • redux
  • TypeScript
  • UXUI
  • ์ฝ”๋”ฉ์• ํ”Œ
  • CS
  • react
  • useEffect
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
hELLO ยท Designed By ์ •์ƒ์šฐ.
Zoeeey

Stack flows in you

๐ŸŸจ JavaScript/๊ฐœ๋…

[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (4) : ํด๋ž˜์Šค์˜ ์ƒ์† (sub classing)

2022. 5. 25. 13:57

ํด๋ž˜์Šค์˜ ์ƒ์† (sub classing)

class Goodcoder {
  constructor(age, lang, address) {
    this.age = age;
    this.lang = lang;
    this.address = address;
  }

  coding() {
    console.log(`๋‚ด๊ฐ€ ๊ณต๋ถ€์ค‘์ธ ์–ธ์–ด๋Š” ${this.lang}์ž…๋‹ˆ๋‹ค.`)
  }
}

์ด ์•„๋ž˜์— ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์€๋ฐ, class Goodcoder์˜ ๊ฐ’์„ ์ƒ์†์‹œํ‚ค๊ณ  ์‹ถ๋‹ค๋ฉด extends๋ฅผ ๋„ฃ์–ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

class Employee extends Goodcoder {}

์ด๋ ‡๊ฒŒ ์ƒˆ ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด extends๋กœ ์ƒ์†์„ ํ•˜๋ฉด, ์ƒˆ๋กœ์šด ํด๋ž˜์Šค์— ์ด์ „ ํด๋ž˜์Šค ๊ฐ’๋“ค์ด ์ƒ์†๋œ๋‹ค.

const noran = new Employee(20,'Java','Seoul');

noran.coding(); //๋‚ด๊ฐ€ ๊ณต๋ถ€์ค‘์ธ ์–ธ์–ด๋Š” Java์ž…๋‹ˆ๋‹ค.

* ์ƒ์† ์ž์‹์€ ์—ฌ๋Ÿฌ๋ช…์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.


์ƒ์†๋œ ์ž์‹์—์„œ์˜ ์ˆ˜์ •๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. (์ด์ „ ๋ถ€๋ชจ์˜ ์†์„ฑ๋„ ๊ฐ™์ด ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด super๋ฅผ ๋ถ™์ด๋ฉด ๋œ๋‹ค.)

class Goodcoder {
  constructor(age, lang, address) {
    this.age = age;
    this.lang = lang;
    this.address = address;
  }

  coding() {
    console.log(`๋‚ด๊ฐ€ ๊ณต๋ถ€์ค‘์ธ ์–ธ์–ด๋Š” ${this.lang}์ž…๋‹ˆ๋‹ค.`)
  }
}

class Employee extends Goodcoder {
  coding() {
    super.coding();
    console.log(`๋‚˜๋Š” ${this.lang}๋ฅผ ๋งˆ์Šคํ„ฐํ–ˆ์Šต๋‹ˆ๋‹ค.`)
  }
}

const noran = new Employee(20,'Java','Seoul');

noran.coding();
//๋‚ด๊ฐ€ ๊ณต๋ถ€์ค‘์ธ ์–ธ์–ด๋Š” Java์ž…๋‹ˆ๋‹ค.
//๋‚˜๋Š” Java๋ฅผ ๋งˆ์Šคํ„ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : ๋“œ๋ฆผ์ฝ”๋”ฉ https://www.youtube.com/@dream-coding / MDN https://developer.mozilla.org/ko

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋™์ผ์กฐ๊ฑด (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐ŸŸจ JavaScript > ๊ฐœ๋…' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด(Object)์™€ ํ”„๋กœํผํ‹ฐ(property) (2) : ์ƒ์„ฑ/์ˆ˜์ •๊ณผ cloning  (0) 2022.05.31
[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (5) : instanceOf ์—ฐ์‚ฐ์ž  (0) 2022.05.25
[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (3) : ์ •์  ์†์„ฑ๊ณผ ๋ฉ”์†Œ๋“œ(static properties and methods)  (0) 2022.05.04
[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (2) : ๊ฐ์ฒด(object)์™€ getter and setter  (0) 2022.05.04
[mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (1) : ํด๋ž˜์Šค(class)  (0) 2022.05.03
    '๐ŸŸจ JavaScript/๊ฐœ๋…' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด(Object)์™€ ํ”„๋กœํผํ‹ฐ(property) (2) : ์ƒ์„ฑ/์ˆ˜์ •๊ณผ cloning
    • [mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (5) : instanceOf ์—ฐ์‚ฐ์ž
    • [mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (3) : ์ •์  ์†์„ฑ๊ณผ ๋ฉ”์†Œ๋“œ(static properties and methods)
    • [mdn, ๋“œ๋ฆผ์ฝ”๋”ฉ ์™ธ] ๊ฐ์ฒด์ง€ํ–ฅ (2) : ๊ฐ์ฒด(object)์™€ getter and setter
    Zoeeey
    Zoeeey
    ๊ธธ๊ฒŒ ์ƒ๊ฐํ•˜๊ณ  ์งง๊ฒŒ ๊ทธ๋ฆฌ๊ธฐ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”