Java

์ž๋ฐ”(Java)์˜ OOP(๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ) ๊ฐœ๋…

567Rabbit 2024. 5. 22. 14:17

Object Oriented Programing : OOP(๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ)

 

๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ์ธก๋ฉด์—๋Š” ํด๋ž˜์Šค์™€ ๊ฐ์ฒด๊ฐ€ ์žˆ๋‹ค.

ํด๋ž˜์Šค๋Š” ํฐํ‹€์ด๋ฉฐ ํด๋ž˜์Šค ์•ˆ์— ์žˆ๋Š” ๊ฒƒ์ด ๊ฐ์ฒด(์ธ์Šคํ„ด์Šค)์ด๋‹ค.

๊ณผ์ผ์ด ํด๋ž˜์Šค๋ฉด / ์‚ฌ๊ณผ ๋ฐ”๋‚˜๋‚˜ ์ฒด๋ฆฌ๋Š” ์ธ์Šคํ„ด์Šค(๊ฐ์ฒด)

ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด์˜ ํƒฌํ”Œ๋ฆฟ์ด๋ผ๊ณ ๋„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜์˜ ๋ฌถ์Œ์„ ๊ฐ์ฒด๋ผ๊ณ  ํ•œ๋‹ค.

- ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง€๊ณ , ์‹ค์ œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋งŒ๋“ ๋‹ค! => ๊ฐ์ฒด ์ƒ์„ฑ
- ํด๋ž˜์Šค๋Š” ํ‹€์ด๊ณ  ๊ฐ์ฒด๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ƒ์„ฑ๋œ ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.

 


๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ => ๋ฐ์ดํ„ฐ์™€ ๋ฉ”์„œ๋“œ๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค. ex) java

vs) ์ ˆ์ฐจ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ => ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ ˆ์ฐจ๋‚˜ ๋ฉ”์„œ๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ex) C์–ธ์–ด

 


๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ DRY ์›์น™์„ ๋”ฐ๋ฅธ๋‹ค.
DRY( DRY(Don't Repeat Yourself) ์›์น™์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๋Š” ์›์น™์ด๋‹ค. ์ด๋Š” ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ด๊ณ , ๋ฒ„๊ทธ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ์„ ์ค„์ด๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค ) => ์ฝ”๋“œ ๋ฐ˜๋ณต์„ ์ค„์ด๋Š” ๊ฒƒ
์ฆ‰ , ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๊ณตํ†ต๋œ ์ฝ”๋“œ๋ฅผ ์ถ”์ถœํ•˜์—ฌ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๊ณ  ํ•œ ๊ณณ์— ๋ฐฐ์น˜ํ•˜์—ฌ ์žฌ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค

 

*** ์ƒ์†์„ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๊ณ  ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค ***

 

 

 

OOP(Object Oriented Programing : ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ) ์•„๋‹Œ๊ฒƒ
int num1 = 5; 

float num3 = 3.4f;

double num5 = 3.4;

 

 

OOP(Object Oriented Programing : ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ) ์ธ ๊ฒƒ, ์ถ”ํ›„์— ํด๋ž˜์Šค๋กœ ๋งŒ๋“ค์–ด์กŒ๋‹ค.

- ์•ž๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ์จ์•ผํ•˜๋Š” ์ด์œ , ํด๋ž˜์Šค๋กœ ๋‚˜์ค‘์— ๋งŒ๋“ค์–ด์กŒ๋‹ค. (Integer, Float, Double, ...)

 

Integer num2 = 5; 

Float num4 = 3.4f;

Double num6 = 3.4;