๐Ÿ“˜ 221019 JAVA ๊ฐœ๋ฐœ์ผ์ง€ DAY+7 [ ์ ‘๊ทผ์ œํ•œ์ž, ์ƒ์†, ๋‹คํ˜•์„ฑ ]

rossiebiยท2022๋…„ 10์›” 19์ผ
0

๐Ÿ’ป JAVA ๊ฐœ๋ฐœ์ผ์ง€ย 

๋ชฉ๋ก ๋ณด๊ธฐ
10/38
post-thumbnail

๊ณผ์ •์„ ์‹œ์ž‘ํ•œ์ง€ ๋ฒŒ์จ ์ผ์ฃผ์ผ์ฐจ๋ผ๋‹ˆ ๋ฏฟ๊ธฐ์งˆ ์•Š๋Š”๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฃจ ํ•˜๋ฃจ ์Œ“์ด๋ฉด ์‹ค๋ ฅ์ด ๋˜๊ฒ ์ง€?! ํ™”์ดํŒ…๐Ÿค ๐Ÿ’ช ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ๊ฐœ๋ฐœ์ผ์ง€๋ฅผ ๋” ๊น”๋”ํ•˜๊ณ  ์˜ˆ์˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์„์ง€ ๊ณ ๋ฏผ์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค.
์–ด์ œ์— ์ด์–ด ํด๋ž˜์Šค์™€ ๊ฐ์ฒด์— ๋Œ€ํ•ด ๋ฐฐ์› ๋‹ค. ์–ด๋ ค์›Œ์„œ ์‘์šฉ์ด ์•ˆ๋˜๋Š” ๊ฒƒ ๊ฐ™์•„ ๋‹ค์‹œ ๊ฐœ๋…์„ ์žก๊ณ  ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋Š”๊ฑธ๋กœ!

๐Ÿ”” [ ์ ‘๊ทผ ์ œํ•œ์ž ]

  • ๊ฐ์ฒด์˜ ํ•„๋“œ๋ฅผ ์™ธ๋ถ€์—์„œ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์—†๋„๋ก ๋ง‰์•„ํ•  ๊ฒฝ์šฐ
  • ์ ‘๊ทผ์ œํ•œ์ž์˜ ์ข…๋ฅ˜ : public, protected, private
์ ‘๊ทผ์ œํ•œ์ž์ œํ•œ๋Œ€์ƒ์ž์ œํ•œ๋ฒ”์œ„
publicํด๋ž˜์Šค, ํ•„๋“œ, ์ƒ์„ฑ์ž, ๋ฉ”์†Œ๋“œ์—†์Œ
protectedํ•„๋“œ, ์ƒ์„ฑ์ž, ๋ฉ”์†Œ๋“œ๊ฐ™์€ ํŒจํ‚ค์ง€์ด๊ฑฐ๋‚˜, ์ž์‹ ๊ฐ์ฒด๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
defaultํด๋ž˜์Šค, ํ•„๋“œ, ์ƒ์„ฑ์ž, ๋ฉ”์†Œ๋“œ๊ฐ™์€ ํŒจํ‚ค์ง€
privat eํ•„๋“œ, ์ƒ์„ฑ์ž, ๋ฉ”์†Œ๋“œ๊ฐ์ฒด ๋‚ด๋ถ€

๐Ÿ”” [ ์ƒ์† ]

  • ์ƒ์†์€ ๋ถ€๋ชจ๊ฐ€ ์ž์‹์—๊ฒŒ ๋ฌผ๋ ค์ฃผ๋Š” ํ–‰์œ„๋ฅผ ๋งํ•จ
  • ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋žจ์—์„œ๋„ ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ํ•„๋“œ์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ๋ฌผ๋ ค์ค„ ์ˆ˜ ์žˆ์Œ
  • ์ž˜ ๊ฐœ๋ฐœ๋œ ํด๋ž˜์Šค๋ฅผ ์žฌ์‚ฌ์šฉํ•ด์„œ ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“œ๋Š” ํ–‰์œ„
    -> ์ค‘๋ณต๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์ค„์ž„, ์‹œ๊ฐ„ ๋‹จ์ถ•

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

๋ถ€๋ชจ ํด๋ž˜์Šค ๋’ค์— extends ๋ถ™์ด๊ธฐ

public class ์ž์‹ํด๋ž˜์Šค extends ๋ถ€๋ชจํด๋ž˜์Šค{
}

but, ์ž๋ฐ”๋Š” ๋‹ค์ค‘ ์ƒ์† ํ—ˆ์šฉ x
๋”ฐ๋ผ์„œ extends ๋’ค์—๋Š” ๋‹จ ํ•˜๋‚˜์˜ ๋ถ€๋ชจ ํด๋ž˜์Šค๋งŒ ๊ฐ€๋Šฅ

๐Ÿ“Œ ์˜ˆ์ œ


-> phone ํด๋ž˜์Šค ์ž‘์„ฑ

-> phone ํด๋ž˜์Šค ์ƒ์†ํ•ด์„œ smartphone ํด๋ž˜์Šค ์ž‘์„ฑ

-> ๊ฒฐ๊ณผ

๐Ÿ“ข ๋ถ€๋ชจ ์ƒ์„ฑ์ž ํ˜ธ์ถœ

  • ์ž์†ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๋ฉด, ์ž์†์˜ ๋ฉค๋ฒ„์™€ ์กฐ์ƒ์˜ ๋ฉค๋ฒ„๊ฐ€ ํ•ฉ์ณ์ง„ ํ•˜๋‚˜์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ƒ์„ฑ๋จ
  • ์กฐ์ƒ์˜ ๋ฉค๋ฒ„๋“ค๋„ ์ดˆ๊ธฐํ™” ๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž์†์˜ ์ƒ์„ฑ์ž์˜ ์ฒซ ๋ฌธ์žฅ์—์„œ ์กฐ์ƒ์˜ ์ƒ์„ฑ์ž๋ฅผ ํ˜ธ์ถœํ•ด์•ผํ•จ
์ž์‹ํด๋ž˜์Šค ๋ณ€์ˆ˜ = new ์ž์‹ํด๋ž˜์Šค ();

// ์ž์‹ ์ƒ์„ฑ์ž ์„ ์–ธ
public  ์ž์‹ํด๋ž˜์Šค (...){
 super();
 }

๐Ÿ”” [ ๋ฉ”์†Œ๋“œ ์žฌ์ •์˜ - ๋ฉ”์†Œ๋“œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ ]

  • ์‚ฌ์šฉํ•˜๊ธฐ์— ์ ํ•ฉํ•˜์ง€ ์•Š์€ ๋ถ€๋ถ„์„ ์žฌ์ •์˜ ํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ
  • ์กฐ์ƒํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ์ƒ์†๋ฐ›์€ ๋ฉ”์†Œ๋“œ ๋‚ด์šฉ์„ ์ƒ์†๋ฐ›๋Š” ํด๋ž˜์Šค์— ๋งž๊ฒŒ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ
  • override : ~์œ„์— ๋ฎ์–ด์“ฐ๋‹ค

    ๐Ÿ“ข ์˜ค๋ฒ„๋ผ์ด๋”ฉ ์กฐ๊ฑด

  • ์„ ์–ธ๋ถ€๊ฐ€ ๊ฐ™์•„์•ผํ•œ๋‹ค (์ด๋ฆ„, ๋งค๊ฐœ๋ณ€์ˆ˜, ๋ฆฌํ„ดํƒ€์ž…)
  • ์ ‘๊ทผ์ œ์–ด์ž๋ฅผ ์ข์€ ๋ฒ”์œ„๋กœ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€
  • ์กฐ์ƒํด๋ž˜์Šค์˜ ๋ฉ”์†Œ๋“œ๋ณด๋‹ค ๋งŽ์€ ์ˆ˜์˜ ์˜ˆ์™ธ๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์—†์Œ

๐Ÿ”” [ ๋‹คํ˜•์„ฑ ]

  • ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์€ ๋™์ผํ•˜์ง€๋งŒ ์‹คํ–‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค์–‘ํ•˜๊ฒŒ ๋‚˜์˜ค๋Š” ์„ฑ์งˆ
  • ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ˜•ํƒœ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ
  • ํ•˜๋‚˜์˜ ์ฐธ์กฐ๋ณ€์ˆ˜๋กœ ์—ฌ๋Ÿฌ ํƒ€์ž…์˜ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ
profile
๋น„์ „๊ณต์ž ๊ฐœ๋ฐœ์ž๋ฅผ ๊ฟˆ๊พธ๋Š” ๋กœ์ง€

0๊ฐœ์˜ ๋Œ“๊ธ€