์ƒˆ์†Œ์‹

Java

[Java] 09. ํด๋ž˜์Šค ์ƒ์†

  • -

๐Ÿ“Œ ํด๋ž˜์Šค ์ƒ์†

๋งˆํŠธ๋ฃŒ์‹œ์นด๋Š” ๊ฐ ๊ฐ์ฒด๋ผ๋ฆฌ ๋น„์Šทํ•œ ํŠน์ง•์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ํ˜•ํƒœ์— ๋งž์ถฐ ๊ฐ์ฒด๋ณ„๋กœ ๋‹ค๋ฅธ ํŠน์ง•์„ ๊ฐ€์งˆ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์‹ค์˜ ์ƒ์†์€ ๋ถ€๋ชจ์˜ ์žฌ์‚ฐ์„ ์ž์‹์ด ์ƒ์†๋ฐ›๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด์—์„œ์˜ ์ƒ์†์€ ๋ถ€๋ชจ์˜ ์ƒ๋ฌผํ•™์  ํŠน์ง•์„ ๋ฌผ๋ ค๋ฐ›๋Š” ์œ ์ „์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค. ๋ถ€๋ชจ ํด๋ž˜์Šค์—์„œ ๋งŒ๋“ค์–ด์ง„ ํŠน์ง•์„ ์ž์‹ ํด๋ž˜์Šค๊ฐ€ ๋ฌผ๋ ค๋ฐ›๊ณ , ํ•„์š”์— ๋”ฐ๋ผ ์œ ์ง€, ์ˆ˜์ •, ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž๋ฐ”์˜ ๊ฐ์ฒด๋ณ„๋กœ ๊ฐ ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋‹ค๋ณด๋ฉด ๋ฐ˜๋ณต๋˜๋Š” ๋ถ€๋ถ„์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ถ€๋ถ„์„ ํšจ์œจ์ ์œผ๋กœ ๋™์ผํ•œ ์ฒ˜๋ฆฌํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค ์ƒ์†์˜ ๊ฐœ๋…์„ ๋ฐฐ์›Œ๋ด…์‹œ๋‹ค. ๋˜ํ•œ ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์ƒ์†๋œ ์ƒ์œ„ ํด๋ž˜์Šค๋ฅผ ์ ‘๊ทผ ๋ฐ ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›Œ๋ด…์‹œ๋‹ค.

๐Ÿ“Œ I. ํด๋ž˜์Šค ์ƒ์†์˜ ๊ธฐ๋ณธ ๊ฐœ๋…

๐Ÿ“š 1. ๋ฐฐ๊ฒฝ

๋น„์Šทํ•œ ๋™์ž‘์„ ํ•˜๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ์ฒด๋“ค์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‘ ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

(1) ํฌ๊ด„์ ์ธ ์†์„ฑ/ํ–‰์œ„๋ฅผ ๊ฐ–๋Š” ํด๋ž˜์Šค๋กœ ๊ตฌํ˜„

  • ์ง€๋‚˜์นœ ์ผ๋ฐ˜ํ™”๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ์ฒด ๊ฐ„์— ๊ตฌ๋ถ€๋‹ˆ ๋ชจํ˜ธํ•˜๊ณ  ์กฐ์ž‘์ด ๋ณต์žกํ•จ
  • ๋ชจ๋“  ๊ฐœ์ฒด๊ฐ€ ํ•˜๋‚˜์˜ ํด๋ž˜์Šค๋กœ ํ‘œํ˜„๋  ๊ฒฝ์šฐ ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด๋กœ์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ด์ต์ด ์—†์–ด ๋น„ํšจ์œจ์ ์ž„

(2) ๋…๋ฆฝ์ ์ธ ํด๋ž˜์Šค๋กœ ๊ตฌํ˜„

  • ๋น„์Šทํ•œ ๋‚ด์šฉ์˜ ๋ฐ˜๋ณต์ ์ธ ํด๋ž˜์Šค ์ž‘์„ฑ์— ํšจ์œจ์ 
  • ๋น„์Šทํ•œ ํ–‰์œ„์— ๋Œ€ํ•ด ์„œ๋กœ ๋‹ค๋ฅธ ์ธํ„ฐํŽ˜์ด์Šค/ํ–‰์œ„๋ฅผ ํ•  ์ˆ˜ ์žˆ์Œ
  • ํ•˜๋‚˜์˜ ๋ฐฐ์—ด๋กœ ๋ฌถ์„ ์ˆ˜ ์—†์Œ

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


๐Ÿ“š 2. ํด๋ž˜์Šค ์ƒ์†์˜ ๊ธฐ๋ณธ ๊ฐœ๋…

  • ํŠน์ • ํด๋ž˜์Šค๊ฐ€ ๊ฐ€์ง€๋Š” ์ผ๋ถ€ ์†์„ฑ/ํ–‰์œ„๋ฅผ ๋‹ค๋ฅธ ์ƒˆ ํด๋ž˜์Šค์—๊ฒŒ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๋งบ๋Š” ๊ด€๊ณ„
  • ๊ฐ์ฒด์ง€ํ–ฅ์˜ 5๊ฐ€์ง€ ํŠน์ง• ์ค‘ ํ•˜๋‚˜๋กœ ํด๋ž˜์Šค ์ •์˜์‹œ ์‚ฌ์šฉ๋จ
  • ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ์œ„ํ•˜์—ฌ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•จ
  • ๊ธฐ์กด์˜ ํด๋ž˜์Šค ๋ฉค๋ฒ„๋ฅผ ๊ทธ๋Œ€๋กœ ์ด์šฉํ•˜๋˜, ์ƒˆ๋กœ์šด ๋ฉค๋ฒ„๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Œ

๐Ÿ“š 3. ์ƒ์†์˜ ์ด์  

(1) ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ

  • ๋น„์Šทํ•œ ๋™์ž‘์„ ํ•˜๋Š” ์ฝ”๋“œ ๋ฐ ํด๋ž˜์Šค๋ฅผ ์žฌ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  ๊ธฐ์กด์˜ ํด๋ž˜์Šค ์ฝ”๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์—ฌ ์žฌ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Œ
  • ๊ฒ€์ฆ๋œ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ์ตœ์†Œํ™”ํ•  ์ˆ˜ ์žˆ์Œ
  • ์†Œ์Šค ์ฝ”๋“œ ๊ด€๋ฆฌ์™€ ์œ ์ง€ ๋ณด์ˆ˜๊ฐ€ ์šฉ์ดํ•จ
  • ๊ฐœ๋ฐœ ์‹œ๊ฐ„์ด ๋‹จ์ถ•๋จ

(2) ์—ฐ๊ด€๋œ ์ผ๋ จ์˜ ํฌ๋ž˜์Šค์— ๋Œ€ํ•œ ๊ณตํ†ต ๊ทœ์•ฝ์„ ์ •์˜

  • ๊ณตํ†ต ๋ถ€๋ชจ๋กœ๋ถ€ํ„ฐ ํŒŒ์ƒ๋œ ๋น„์Šทํ•œ ์œ ํ˜•์˜ ํด๋ž˜์Šค ๊ฐ์ฒด๊ฐ„์˜ ๋™์ž‘์„ ํ†ต์ผํ•จ
  • ๊ฐ„๊ฒฐ์„ฑ์ด ์ œ๊ณต๋จ
  • ๋™์ž‘์„ ํ†ต์ผํ•˜๋Š” ์ƒ์†์˜ ์ฃผ์š” ์ด์ 

๐Ÿ“š 4. ์ƒ์†์˜ ์กฐ๊ฑด: IS-A ๊ด€๊ณ„

์ƒ์†์€ IS-A(~์ค‘์˜ ํ•˜๋‚˜) ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•  ๋•Œ ์ƒ์†์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ์ ์ ˆํ•ฉ๋‹ˆ๋‹ค.

 

โ— ์ฃผ์˜

(1) IS-A ๊ด€๊ณ„

  • ~์ค‘์˜ ํ•˜๋‚˜

(2) HAS-A ๊ด€๊ณ„ 

  • ~์„ ๊ฐ–๋Š”
  • ์ฃผ ํด๋ž˜์Šค ๋ฉค๋ฒ„ ํ•„๋“œ์— ๋‹ค๋ฅธ ํด๋ž˜์Šค ๊ฐ์ฒด๋ฅผ ๋‘˜ ๋ฟ ์ƒ์†์œผ๋กœ ํ‘œํ˜„ํ•˜์ง€ ์•Š์Œ
  • ๋‘ ํด๋ž˜์Šค ๊ฐ„์˜ ์—ฐ๊ด€์„ฑ์ด ๋‚ฎ์•„์ ธ ๋ณ€๊ฒฝ ๋ฐ ํ™•์žฅ์ด ์šฉ์ดํ•จ
    EX) "ํšŒ์› ๋ช…๋ถ€" ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„ ํ•„๋“œ์— "ํ•™์ƒ" ๊ฐ์ฒด๋ฅผ ๋‘ 

๐Ÿ“š 1. JAVA์—์„œ ์ƒ์†์˜ ํŠน์ง•

  • JAVA์˜ ๋ชจ๋“  ํด๋ž˜์Šค๋Š” ์ƒ์† ๊ด€๊ณ„๋ฅผ ๋ช…์‹œํ•˜์ง€ ์•Š์•„๋„ Object ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ํŒŒ์ƒ๋จ
  • JAVA์—์„œ๋Š” ๋‹จ์ผ ์ƒ์†๋งŒ ์ œ๊ณตํ•จ
    *  ๋‹ค์ค‘ ์ƒ์†์ด ํ—ˆ์šฉ๋˜๋Š” interface ์ œ๊ณต์œผ๋กœ ๋ณด์™„ํ•จ
    *  ์ฆ‰ ๋ถ€๋ชจ ํด๋ž˜์Šค๋Š” ํ•œ ๋ฒˆ๋งŒ ์ƒ์†๋ฐ›์„ ์ˆ˜ ์žˆ์Œ
  • private ๋ฉค๋ฒ„๋„ ์ƒ์†์€ ๋˜๋‚˜ ์ง์ ‘์ ์ธ ์ฐธ์กฐ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•จ
    *  ์ƒ์œ„ ํด๋ž˜์Šค์—์„œ ์ œ๊ณตํ•˜๋Š” Access ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ ‘๊ทผ/์ด์šฉ ๊ฐ€๋Šฅํ•จ
  • ๋ณดํ†ต ํ•˜์œ„ ํด๋ž˜์Šค ์ƒ์„ฑ์ž ์ฒซ ์ค„์—์„œ ์ƒ์œ„ ํด๋ž˜์Šค ์ƒ์„ฑ์ž๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ํ˜ธ์ถœ
    *  ์ƒ์œ„ ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„๋Š” ์ƒ์œ„ ํด๋ž˜์Šค์˜ ์ƒ์„ฑ์ž๋ฅผ ํ†ตํ•ด ์ดˆ๊ธฐํ™”

๐Ÿ“š 2. Super ํด๋ž˜์Šค VS Sub ํด๋ž˜์Šค

(1) Super ํด๋ž˜์Šค

  • = parent ํด๋ž˜์Šค = base ํด๋ž˜์Šค
  • ์ž์‹ ์˜ ๋ฉค๋ฒ„๋“ค์„ ์ƒ์†ํ•ด์ฃผ๋Š” ํด๋ผ์Šค

(2) Sub ํด๋ž˜์Šค

  • = child ํด๋ž˜์Šค = derived ํด๋ž˜์Šค
  • super ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๋ฉค๋ฒ„๋“ค์„ ์ƒ์† ๋ฐ›๋Š” ํด๋ž˜์Šค

๐Ÿ“š 3. ํด๋ž˜์Šค ์ƒ์†์˜ ์˜ˆ

 

  • Person์„ ์ƒ์†๋ฐ›์•„ ๋Œ€ํ•™์ƒ์ด๋‚˜ ๊ณ ๋“ฑํ•™์ƒ๊ณผ ๊ฐ™์€ ํ•˜์œ„ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ
  • ์ƒ์†๋ฐ›์€ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ธฐ์ˆ ํ•  ํ•„์š” ์—†์Œ
  • ํ•˜์œ„ ํด๋ž˜์Šค๋Š” ๊ทธ ํด๋ž˜์Šค๋งŒ์˜ ํŠน์ง•๋“ค์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Œ
  • UnivStudent ๊ฐ™์€ ๊ฒฝ์šฐ ๋Œ€ํ•™์ƒ๋งŒ์˜ ํŠน์ง•์ธ ์ „๊ณต์„ ๋ฉค๋ฒ„๋กœ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ „๊ณต์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€ 

๐Ÿ“š 4. Sub ํด๋ž˜์Šค์˜ ์ •์˜

class <subClassName> extends <superClassName> {
     // subClass์— ์ถ”๊ฐ€๋  ๋ฉค๋ฒ„ ์„ ์–ธ
}
  • extends : super ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„๋ฅผ sub ํด๋ž˜์Šค๋กœ ์ƒ์†ํ•˜๋ผ
  • superClassName : ์ƒˆ ํด๋ž˜์Šค์—๊ฒŒ ์ƒ์†ํ•ด์ค„, ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํด๋ž˜์Šค ์ด๋ฆ„
  • subClassName : ์ƒ์†์„ ํ†ตํ•ด ์ƒˆ๋กœ ์ž‘์„ฑ๋  ํด๋ž˜์Šค์˜ ์ด๋ฆ„

๐Ÿ“š 5. Sub ํด๋ž˜์Šค ๊ฐ์ฒด

  • Sub ํด๋ž˜์Šค์˜ ๊ฐ์ฒด๋Š” super ํด๋ž˜์Šค์—์„œ ์ƒ์†๋ฐ›์€ ๋ฉค๋ฒ„๋“ค๊ณผ sub ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋œ ๋ฉค๋ฒ„๋“ค์„ ๋ชจ๋‘ ์ž์‹ ์˜ ๋ฉค๋ฒ„์ฒ˜๋Ÿผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ๋‹จ, super ํด๋ž˜์Šค์˜ private ๋ฉค๋ฒ„๋Š” ์ง์ ‘ ์ ‘๊ทผ ๋ถˆ๊ฐ€
  • super ํด๋ž˜์Šค์—์„œ ์ œ๊ณตํ•˜๋Š” access ๋ฉ”์„œ๋“œ ์ด์šฉํ•˜์—ฌ ๊ฐ„์ ‘ ์ ‘๊ทผ๋งŒ ๊ฐ€๋Šฅ
  • ์ƒ์†๋ฐ›์€ ์ผ๋ถ€ ๋ฉค๋ฒ„๋Š” sub ํด๋ž˜์Šค ๊ฐ์ฒด์˜ ๊ตฌ์ฒดํ™”๋œ ์†์„ฑ/ํ–‰์œ„์— ๋”ฐ๋ผ ์žฌ์ •์˜ ํ•„์š”
  • ์žฌ์ •์˜๋œ super ํด๋ž˜์Šค ๋ฉค๋ฒ„๋Š” ์€ํ๋จ

๐Ÿ“š 6. protected ์ ‘๊ทผ ์ง€์ •์ž

  • default ๋ณด๋‹ค ์ข€ ๋” ์œ ์—ฐํ•œ ์ ‘๊ทผ ์ œ๊ณต
  • ๊ฐ™์€ ํŒจํ‚ค์ง€์˜ ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„  public์ฒ˜๋Ÿผ ์ž์œ ๋กญ๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅ
  • ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์˜ ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„  ์ƒ์† ๊ด€๊ณ„๋ฅผ ๊ฐ€์ ธ์•ผ๋งŒ public์ฒ˜๋Ÿผ ์ž์œ ๋กญ๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅ

์ฆ‰, ๊ฐ™์€ ํŒจํ‚ค์ง€ ๋‚ด์˜ ํด๋ž˜์Šค์™€ ํŒŒ์ƒ ํด๋ž˜์Šค์—์„  ์ž์œ ๋กญ๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์˜ ์ผ๋ฐ˜ ํด๋ž˜์Šค์—์„œ๋งŒ ์ ‘๊ทผ ๋ถˆ๊ฐ€ํ•œ ์ ‘๊ทผ ์ง€์ •์ž ์ž…๋‹ˆ๋‹ค.


๐Ÿ“š 1. ๋ฉ”์„œ๋“œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ(Over-riding)

  • Sub ํด๋ž˜์Šค์—์„œ super ํด๋ž˜์Šค์—์„œ์™€ ๊ฐ™์€ ์ด๋ฆ„์˜ ๋ฉค๋ฒ„๋ฅผ ๋‹ค์‹œ ์ •์˜
  • ๊ธฐ์กด์˜ ๋ฉค๋ฒ„๋ฅผ ์š”๊ตฌ์‚ฌํ•ญ์— ๋งž๊ฒŒ ์ˆ˜์ •ํ•˜๋Š” ํšจ๊ณผ
  • ๋ฐ˜๋“œ์‹œ Super ํด๋ž˜์Šค์—์„œ์™€ ๋™์ผํ•œ ํ˜•ํƒœ๋กœ ์ •์˜ํ•ด์•ผํ•จ
  • ๋ฉ”์„œ๋“œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์‹œ Super ํด๋ž˜์Šค์—์„œ ์ƒ์†๋œ ๋ฉค๋ฒ„๋Š” ์€ํ๋จ
  • Sub ํด๋ž˜์Šค ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ์—์„œ ์€ํ๋œ ๋ฉค๋ฒ„์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด super ์ฐธ์กฐ๋ณ€์ˆ˜ ์ด์šฉ

๐Ÿ“š 2. ์˜ค๋ฒ„๋ผ์ด๋”ฉ vs ์˜ค๋ฒ„๋กœ๋”ฉ

์˜ค๋ฒ„๋กœ๋”ฉ๊ณผ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์€ ์ด๋ฆ„์€ ๋น„์Šทํ•˜์ง€๋งŒ ์ „ํ˜€ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์„ ํ•จ

 

 

๐Ÿ“š 3. this์™€ super

(1) this

  • ํŠน์ • ๊ฐ์ฒด ๋‚ด์—์„œ ๊ฐ์ฒด ์ž์‹ ์„ ์˜๋ฏธํ•˜๋Š” ์ฐธ์กฐ ๋ณ€์ˆ˜
  • ์ƒ์†๋ฐ›์€ ์ƒ์œ„ ํด๋ž˜์Šค ๋ฉค๋ฒ„๋„ ์ ‘๊ทผ ๊ฐ€๋Šฅ
  • ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋ฉค๋ฒ„ํ•„๋“œ ์ด๋ฆ„๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ์‚ฌ์šฉ

(2) super

  • ํ˜„์žฌ ๊ฐ์ฒด์˜ ํ•œ ๋‹จ๊ณ„ ๋ฐ”๋กœ ์œ„์˜ ์ƒ์œ„ ํด๋ž˜์Šค๋ฅผ ์˜๋ฏธํ•˜๋Š” ์ฐธ์กฐ ๋ณ€์ˆ˜
  • ๋ฉ”์„œ๋“œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์œผ๋กœ ์€ํ๋œ ์ƒ์œ„ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ ์‹œ ์‚ฌ์šฉ
  • ์€ํ๋œ super ํด๋ž˜์Šค ๋ฉค๋ฒ„๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ์ฐธ์กฐ ์‹œ์— ์‚ฌ์šฉ

๐Ÿ“š 4. java.lang.Object

  • ํŠน๋ณ„ํžˆ ์ƒ์†๊ด€๊ณ„๋ฅผ ๋ช…์‹œํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ๊ธฐ๋ณธ์ ์œผ๋กœ Object๋กœ๋ถ€ํ„ฐ ์ƒ์†๋จ
  • boolean equals(Object obj), String toString() ๋“ฑ์€ ์žฌ์ •์˜ํ•˜๋ฉด ์ข‹์Œ

 

 

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.