Introduce

๊ฐ์ฒด์ง€ํ–ฅ ๋ชฉํ‘œ๋Š” ์‹ค์„ธ๊ณ„๋ฅผ ๋ชจ๋ฐฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ƒˆ๋กœ์šด ์„ธ๊ณ„๋ฅผ ์ฐฝ์กฐํ•˜๋Š” ๊ฒƒ์ด๋ฉฐ, ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ์€์œ ํ•˜์—ฌ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์€ ๊ฐ์ฒด์ง€ํ–ฅ์˜ ๋‹ค์–‘ํ•œ ์ธก๋ฉด์„ ์ดํ•ดํ•˜๊ณ  ํ•™์Šตํ•˜๋Š” ๋ฐ ํšจ๊ณผ์ ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๊ฐ์ฒด์ง€ํ–ฅ์˜ ๋ณธ์งˆ

  • ๊ฐ์ฒด์ง€ํ–ฅ์ด๋ž€ ์‹œ์Šคํ…œ์„ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ์ž์œจ์ ์ธ ๊ฐ์ฒด๋“ค์˜ ๊ณต๋™์ฒด๋กœ ๋ฐ”๋ผ๋ณด๊ณ  ๊ฐ์ฒด๋ฅผ ์ด์šฉํ•ด ์‹œ์Šคํ…œ์„ ๋ถ„ํ• ํ•˜๋Š” ๋ฐฉ๋ฒ•

  • ์ž์œจ์ ์ธ ๊ฐ์ฒด๋ž€ ์ƒํƒœ์™€ ํ–‰์œ„๋ฅผ ํ•จ๊ป˜ ์ง€๋‹ˆ๋ฉฐ ์Šค์Šค๋กœ ์ž๊ธฐ ์ž์‹ ์„ ์ฑ…์ž„์ง€๋Š” ๊ฐ์ฒด๋ฅผ ์˜๋ฏธ

  • ๊ฐ์ฒด๋Š” ์‹œ์Šคํ…œ์˜ ํ–‰์œ„๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•˜๋ฉฐ, ๊ฐ ๊ฐ์ฒด๋Š” ํ˜‘๋ ฅ ๋‚ด์—์„œ ์ •ํ•ด์ง„ ์—ญํ• ์„ ์ˆ˜ํ–‰

  • ๊ฐ์ฒด๋Š” ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”์‹œ์ง€๋ฅผ ์ „์†กํ•˜๊ณ , ์ˆ˜์‹ ํ•œ ๊ฐ์ฒด๋Š” ์ ํ•ฉํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌ

ํด๋ž˜์Šค์ง€ํ–ฅ X / ๊ฐ์ฒด์ง€ํ–ฅ O

  • ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๊ด€์ ์—์„œ๋Š” ๋งค์šฐ ์ค‘์š”ํ•œ ๊ตฌ์„ฑ์š”์†Œ์ง€๋งŒ ํ•ต์‹ฌ์„ ์ด๋ฃจ๋Š” ์ค‘์‹ฌ ๊ฐœ๋…์€ ์•„๋‹ˆ๋‹ค.

  • ์ง€๋‚˜์น˜๊ฒŒ ํด๋ž˜์Šค๋ฅผ ๊ฐ•์กฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ด€์ ์€ ๊ฐ์ฒด์˜ ์บก์Аํ™”๋ฅผ ์ €ํ•ดํ•˜๊ณ  ํด๋ž˜์Šค์˜ ์ƒํ˜ธ ์˜์กด์„ฑ์ด ๋†’์•„์ง€๊ฒŒ ๋œ๋‹ค.

  • ๋•Œ๋ฌธ์— ๊ฐ์ฒด์ง€ํ–ฅ ์„ค๊ณ„๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด์„  ์ฝ”๋“œ๋ฅผ ๋‹ด๋Š” ํด๋ž˜์Šค์˜ ๊ด€์ ์ด ์•„๋‹Œ ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ฐ์ฒด์˜ ๊ด€์  ์‚ฌ๊ณ ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

  • ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด๋“ค์˜ ํ˜‘๋ ฅ ๊ด€๊ณ„๋ฅผ ์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๋Š” ๋„๊ตฌ์ผ ๋ฟ์ด๋‹ค.(ํ•˜์ง€๋งŒ ํด๋ž˜์Šค๊ฐ€ ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์€ ์•„๋‹˜)

  • ๊ฐ์ฒด๋“ค์ด ์„œ๋กœ ์–ด๋–ค ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›์„์ง€๋ฅผ ๋จผ์ € ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

-
์˜คํ•ด
์ง„์‹ค(ํ•ต์‹ฌ)

๊ฐ์ฒด์ง€ํ–ฅ

ํด๋ž˜์Šค์ง€ํ–ฅ

์ ์ ˆํ•œ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์—ญํ•  ๊ฐ„์˜ ์œ ํ˜„ํ•˜๊ณ  ๊ฒฌ๊ณ ํ•œ ํ˜‘๋ ฅ ๊ด€๊ณ„ ๊ตฌ์ถ•

class

๊ฐ์ฒด์ง€ํ–ฅ์˜ ํ•ต์‹ฌ

ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ตฌํ˜„ ๋งค์ปค๋‹ˆ์ฆ˜ ์ค‘ ํ•˜๋‚˜

ํด๋ž˜์Šค์˜ ๊ตฌ์กฐ์™€ ๋ฉ”์„œ๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ์ฒด์˜ ์—ญํ• /์ฑ…์ž„/ํ˜‘๋ ฅ์— ์ง‘์ค‘ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋ฉฐ, ํด๋ž˜์Šค์— ์–ฝ๋งค์ด์ง€ ๋ง๊ณ  ๊ฐ์ฒด๋ฅผ ์ง€ํ–ฅํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

๊ฐ์ฒด

๊ฐ์ฒด๋ž€ ์‹๋ณ„ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด ๋˜๋Š” ์‚ฌ๋ฌผ์ด๋‹ค. ๊ฐ์ฒด๋Š” ์ž๋™์ฐจ์ฒ˜๋Ÿผ ๋งŒ์งˆ ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์‚ฌ๋ฌผ์ผ ์ˆ˜๋„ ์žˆ๊ณ , ์‹œ๊ฐ„์ฒ˜๋Ÿผ ์ถ”์ƒ์ ์ธ ๊ฐœ๋…์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ๊ฐ์ฒด๋Š” ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ(state), ํŠน์ง•์ ์ธ ํ–‰๋™(behavior), ๊ตฌ๋ณ„ ๊ฐ€๋Šฅํ•œ ์‹๋ณ„์ž(identity) ๋ฅผ ๊ฐ€์ง„๋‹ค.

์ƒํƒœ

์ƒํƒœ๋ฅผ ์ด์šฉํ•˜๋ฉด ๊ณผ๊ฑฐ์˜ ์ด๋ฒคํŠธ ๋‚ด์—ญ์„ ์•Œ์ง€ ์•Š์•„๋„ ํ˜„์žฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ์ฒด์˜ ํ–‰๋™ ๋ฐฉ์‹์„ ์ดํ•ดํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์‰ฝ๊ฒŒ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

์ƒํƒœ์™€ ํ”„๋กœํผํ‹ฐ

์ƒํƒœ๋Š” ํŠน์ • ์‹œ์ ์— ๊ฐ์ฒด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ •๋ณด์˜ ์ง‘ํ•ฉ์œผ๋กœ ๊ฐ์ฒด์˜ ๊ตฌ์กฐ์  ํŠน์ง•์„ ํ‘œํ˜„ํ•˜๋ฉฐ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ๊ฐ์ฒด์˜ ์ƒํƒœ

    • ํ”„๋กœํผํ‹ฐ(property): ๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ชจ๋“  ํŠน์ง•, ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๊ณ  ๊ณ ์ •๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ •์ ์ด๋ฉฐ ์•„๋ž˜ ๋‘ ๊ฐ€์ง€ ์ข…๋ฅ˜์˜ ์กฐํ•ฉ์œผ๋กœ ํ‘œํ˜„

      • ๋งํฌ(link): ๊ฐ์ฒด์™€ ๊ฐ์ฒด ์‚ฌ์ด์˜ ์—ฐ๊ฒฐ, ๋งํฌ๋กœ ์—ฐ๊ฒฐ๋์„ ๋•Œ ์š”์ฒญ์„ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ

      • ์†์„ฑ(attribute): ๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋‹จ์ˆœํ•œ ๊ฐ’

    • ํ”„๋กœํผํ‹ฐ ๊ฐ’(property value): ์‹œ๊ฐ„์ด ํ๋ฆ„์— ๋”ฐ๋ผ ์ด๋ฒคํŠธ์— ์˜ํ•ด ๋ณ€๊ฒฝ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋™์ ์ธ ํŠน์ง•์„ ๊ฐ€์ง

ํ–‰๋™

๊ฐ์ฒด์ง€ํ–ฅ ์„ธ๊ณ„์—์„œ ๊ฐ์ฒด๋Š” ์ž์œจ์ ์ด๋ฉฐ ๋‹ค๋ฅธ ๊ฐ์ฒด์˜ ์ƒํƒœ์— ์ง์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜๋„ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์–ด์•ผ ํ•œ๋‹ค. ๊ฐ์ฒด์˜ ํ–‰๋™์€ ์•„๋ž˜ ๋‘ ๊ฐ€์ง€๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค.

  1. ๊ฐ์ฒด ์ž์‹ ์˜ ์ƒํƒœ ๋ณ€๊ฒฝ

    • ๊ฐ์ฒด์˜ ํ–‰๋™์€ ์ƒํƒœ์— ์˜ํ–ฅ์„ ๋ฐ›๋Š”๋‹ค.

    • ์ƒํƒœ๋Š” ๊ฐ์ฒด์˜ ํ–‰๋™์— ์˜ํ•ด ๋ณ€๊ฒฝ๋œ๋‹ค.

  2. ํ–‰๋™ ๋‚ด์—์„œ ํ˜‘๋ ฅํ•˜๋Š” ๋‹ค๋ฅธ ๊ฐ์ฒด์— ๋Œ€ํ•œ ๋ฉ”์‹œ์ง€ ์ „์†ก

    • ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค.

    • ์ˆ˜์‹ ํ•œ ๊ฐ์ฒด๋Š” ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ–‰๋™ํ•œ๋‹ค.

    • ๊ฐ์ฒด๋Š” ํ–‰๋™์„ ํ†ตํ•ด ๋‹ค๋ฅธ ๊ฐ์ฒด์™€์˜ ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•˜๋ฏ€๋กœ ํ–‰๋™์€ ์™ธ๋ถ€์— ๊ฐ€์‹œ์ ์ด์–ด์•ผ ํ•œ๋‹ค.

์‹๋ณ„์ž

์‹๋ณ„์ž๋ž€ ๊ฐ์ฒด๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์€ ๊ฐ์ฒด๋ฅผ ์„œ๋กœ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ •ํ•œ ํ”„๋กœํผํ‹ฐ๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ๋ชจ๋“  ๊ฐ์ฒด๋Š” ์‹๋ณ„์ž๋ฅผ ๊ฐ€์ง„๋‹ค. ๋‹จ์ˆœํ•œ ๊ฐ’์˜ ๊ฒฝ์šฐ ๊ฐ’์˜ ์ƒํƒœ๊ฐ€ ๋ณ€ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋‘ ์ธ์Šคํ„ด์Šค ์ƒํƒœ๊ฐ€ ๊ฐ™์œผ๋ฉด ๋‘ ๊ฐ’์„ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ํŒ๋‹จํ•˜๋ฉฐ(๋™๋“ฑ์„ฑ), ๋ฐ˜๋Œ€๋กœ ๊ฐ์ฒด๋Š” ๊ฐ€๋ณ€ ์ƒํƒœ๋ฅผ ๊ฐ–๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์•ˆ์˜ ์ƒํƒœ๊ฐ€ ๋ชจ๋‘ ๋˜‘๊ฐ™๋”๋ผ๋„ ๋‘ ๊ฐ์ฒด๋Š” ๋ณ„๊ฐœ์˜ ๊ฐ์ฒด๋กœ ์ธ์‹ํ•˜๊ฒŒ ๋œ๋‹ค(๋™์ผ์„ฑ).

  • ๋™๋“ฑ์„ฑ(equality): ๋‘ ๊ฐ’์ด ๊ฐ™์€์ง€ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๋Š” ์„ฑ์งˆ

  • ๋™์ผ์„ฑ(identical): ์ƒํƒœ์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ์‹๋ณ„์ž ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ์ฒด๋ฅผ ๊ฐ™์€์ง€๋ฅผ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๋Š” ์„ฑ์งˆ

ํ–‰๋™์ด ์ƒํƒœ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค

๊ฐ์ฒด์ง€ํ–ฅ์— ์ž…๋ฌธํ•  ๋•Œ ์‰ฝ๊ฒŒ ๋น ์ง€๋Š” ํ•จ์ •์€ ์ƒํƒœ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๊ฐ์ฒด๋ฅผ ๋ฐ”๋ผ๋ณด๋Š” ๊ฒƒ์ธ๋ฐ, ํ•„์š”ํ•œ ์ƒํƒœ๋ฅผ ๋จผ์ € ์„ค๊ณ„ํ•˜๊ณ  ๊ทธ ํ›„ ํ–‰๋™์„ ๊ณ ๋ คํ•œ๋‹ค๋ฉด ์„ค๊ณ„์— ๋‚˜์œ ์˜ํ–ฅ์„ ๋ผ์นœ๋‹ค.

  1. ์บก์Аํ™” ์ €ํ•ด: ์ƒํƒœ์— ์ดˆ์ ์„ ๋งž์ถœ ๊ฒฝ์šฐ ์ƒํƒœ๊ฐ€ ๊ฐ์ฒด ๋‚ด๋ถ€๋กœ ๊น”๋”ํ•˜๊ฒŒ ์บก์Аํ™”๋˜์ง€ ๋ชปํ•˜๊ณ  ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค์— ๋…ธ์ถœ ๋  ํ™•๋ฅ ์ด ๋†’์•„์ง„๋‹ค.

  2. ๊ฐ์ฒด์˜ ๊ณ ๋ฆฝํ™”: ๊ฐ์ฒด๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฌธ๋งฅ ๋‚ด์—์„œ ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•˜๊ธฐ ์œ„ํ•จ์ธ๋ฐ, ์ƒํƒœ๋ฅผ ๋จผ์ € ๊ณ ๋ คํ•˜๋ฉด ํ˜‘๋ ฅ์ด๋ผ๋Š” ๋ฌธ๋งฅ์—์„œ ๋ฒ—์–ด๋‚œ ์ฑ„ ์„ค๊ฒŒํ•˜๊ฒŒ ๋˜์–ด ํ˜‘๋ ฅ์— ์ ํ•ฉ์น˜ ์•Š์€ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ๋œ๋‹ค.

  3. ๊ฐ์ฒด ์žฌ์‚ฌ์šฉ์„ฑ ์ €ํ•˜: ๊ฐ์ฒด ์žฌ์‚ฌ์šฉ์„ฑ์€ ๋‹ค์–‘ํ•œ ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์—์„œ ๋‚˜์˜ค๋Š”๋ฐ, ์ƒํƒœ ์ดˆ์ ์ธ ๊ฒฝ์šฐ ๋‹ค์–‘ํ•œ ํ˜‘๋ ฅ์ด ์–ด๋ ต๋‹ค.

๊ฐ์ฒด๋Š” ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•˜๊ธฐ ์œ„ํ•ด ์กด์žฌํ•˜๋ฉฐ, ํ–‰๋™์€ ํ˜‘๋ ฅํ—ค ์ฐธ์—ฌํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ด๋ฏ€๋กœ ์ ์ ˆํ•˜๊ฒŒ ์„ค๊ณ„ํ•˜๊ธฐ ์œ„ํ•ด์„  ์ƒํƒœ๋ณด๋‹จ ํ–‰๋™์„ ๋จผ์ € ๊ณ ๋ คํ•ด์•ผํ•œ ํ›„ ์ƒํƒœ๋ฅผ ์„ค๊ณ„ํ•ด์•ผํ•œ๋‹ค.

์ฐธ๊ณ ์ž๋ฃŒ

Last updated

Was this helpful?