์•ˆ๋…•! ์šฐ๋ฆฌ๋Š” ์˜ค๋Š˜์˜ ์ˆ˜์—…์„ Java์˜ ์บก์Šํ™”์— ํ• ์• ํ•˜๊ณ  ๊ฒŒ์ดํŠธ์—์„œ ๋ฐ”๋กœ ์˜ˆ์ œ๋กœ ์‹œ์ž‘ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. :) ์—ฌ๊ธฐ์— ์ผ๋ฐ˜์ ์ธ ์†Œ๋‹ค ๋””์ŠคํŽœ์‹ฑ ๋จธ์‹ ์ด ์žˆ์Šต๋‹ˆ๋‹ค . ํ•œ ๊ฐ€์ง€ ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ? ์ž์„ธํ•œ ๋‹ต๋ณ€์„ ์ œ๊ณตํ•˜์‹ญ์‹œ์˜ค. ์†Œ๋‹ค๋Š” ์–ด๋””์—์„œ ์™”์Šต๋‹ˆ๊นŒ? ๋‚ด๋ถ€ ์˜จ๋„๋Š” ์–ด๋–ป๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๊นŒ? ์–ผ์Œ์€ ์–ด๋””์— ๋ณด๊ด€๋˜๋‚˜์š”? ๊ธฐ๊ณ„๋Š” ์ถ”๊ฐ€ํ•  ์‹œ๋Ÿฝ์„ ์–ด๋–ป๊ฒŒ ์••๋‹ˆ๊นŒ? ์•„๋งˆ๋„ ์ด๋Ÿฌํ•œ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต์ด ์—†์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์‚ฌ๋žŒ์ด ์ด ๊ธฐ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ํ˜„์žฌ ๊ทธ๋‹ค์ง€ ์ธ๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์˜ˆ๋ฅผ ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ํ™•์‹คํžˆ ๋งค์ผ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ. ์˜ค, ๋‚˜์—๊ฒŒ ์•„์ด๋””์–ด๊ฐ€ ์žˆ์–ด! Google ๊ฒ€์ƒ‰ ์—”์ง„์ด์บก์Šํ™”์˜ ์›๋ฆฌ - 2 ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.๊ณต์žฅ. ์ž…๋ ฅํ•œ ๋‹จ์–ด์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๊นŒ? ์ด ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ์•„๋‹Œ ์ƒ๋‹จ์— ์žˆ๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋งค์ผ Google์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์•„๋งˆ ๋ชจ๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ, ๊ทธ๊ฒƒ์€ ๋‹น์‹ ์ด ์•Œ์•„์•ผ ํ•  ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ƒ๊ฐํ•˜์ง€ ์•Š๊ณ  ๊ฒ€์ƒ‰ ์—”์ง„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ์กฐ ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅธ ์ฑ„ ๊ธฐ๊ณ„์—์„œ ํƒ„์‚ฐ์Œ๋ฃŒ๋ฅผ ๊ตฌ์ž…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์—ฐ ๊ธฐ๊ด€์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํƒ๊ตฌํ•˜์ง€ ์•Š๊ณ  ๊ณ ๋“ฑํ•™๊ต ๋ฌผ๋ฆฌํ•™์„ ๋ชฐ๋ผ๋„ ์ž๋™์ฐจ๋ฅผ ์šด์ „ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ฃผ์š” ์›์น™ ์ค‘ ํ•˜๋‚˜์ธ ์บก์Šํ™” ๋•๋ถ„์— ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด ์ฃผ์ œ์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ๊ธฐ์‚ฌ๋ฅผ ์ฝ์œผ๋ฉด์„œ ์บก์Šํ™”์™€ ์ •๋ณด ์€๋‹‰์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ๋„๋ฆฌ ํผ์ง„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐœ๋…์„ ์ ‘ํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ณต๊ต๋กญ๊ฒŒ๋„, ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์€ '๋ผ๋Š” ๋‹จ์–ด๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์บก์Šํ™”'๋Š” ๋‹ค๋ฅธ ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋‹น์‹ ์ด ์™„์ „ํžˆ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‘ ์šฉ์–ด๋ฅผ ๋ชจ๋‘ ํ•ด๋…ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์˜ ์›๋ž˜ ์˜๋ฏธ๋Š”์บก์Šํ™”๋Š” ํ•˜๋‚˜์˜ ํŒจํ‚ค์ง€("์บก์Š")์—์„œ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋กœ ์ž‘์—…ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ์™€ ๋ฐฉ๋ฒ•์„ ๊ฒฐํ•ฉํ•˜๋Š” ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. Java์—์„œ ์บก์Šํ™” ํŒจํ‚ค์ง€๋Š” ํด๋ž˜์Šค ์ž…๋‹ˆ๋‹ค . ํด๋ž˜์Šค์—๋Š” ๋ฐ์ดํ„ฐ (ํ•„๋“œ)์™€ ํ•ด๋‹น ๋ฐ์ดํ„ฐ ์ž‘์—…์„ ์œ„ํ•œ ๋ฉ”์„œ๋“œ๊ฐ€ ๋ชจ๋‘ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์บก์Šํ™”์˜ ์›๋ฆฌ - 3์ด๊ฒƒ์€ ๋‹น์‹ ์—๊ฒŒ ๋ช…๋ฐฑํ•ด ๋ณด์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ๋‹ค๋ฅด๊ฒŒ ๋ฐฐ์—ด๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ ์ž‘์—…๊ณผ ์—„๊ฒฉํ•˜๊ฒŒ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(OOP)์—์„œ ํ”„๋กœ๊ทธ๋žจ์€ ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ ์ž‘์—…์„ ์œ„ํ•œ ํ•จ์ˆ˜๋กœ ๊ตฌ์„ฑ๋œ ์บก์Š(ํด๋ž˜์Šค)๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ •๋ณด ์€๋‹‰์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

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

public class Vehicle {

   public void gas() {

       /* Some complicated things happen inside a car.
       As a result, it moves forward */
   }

   public void brake() {

       /* Some complicated things happen inside a car.
       As a result, it slows down */
   }

   public static void main(String[] args) {

       Vehicle vehicle = new Vehicle();

       // How everything looks to the user

       // Press one pedal, the car moves
       vehicle.gas();

       // Press the other pedal, the car brakes
       vehicle.brake();
   }
}
์ด๊ฒƒ์ด Java ํ”„๋กœ๊ทธ๋žจ์—์„œ ๊ตฌํ˜„์ด ์ˆจ๊ฒจ์ง„ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์‹ค์ƒํ™œ์—์„œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ธํ„ฐํŽ˜์ด์Šค(๋ฉ”์†Œ๋“œ)๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์ž๋™์ฐจ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์›ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ ์ผ์–ด๋‚˜๋Š” ์ผ์€ ๋ถˆํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ชจ๋“  ๊ฒƒ์ด ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์šฐ๋ฆฌ๋Š” ๊ตฌํ˜„ ์ˆจ๊น€์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž๋ฐ”์—๋„ ๋ฐ์ดํ„ฐ ์€๋‹‰ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ฒŒํ„ฐ์™€ ์„ธํ„ฐ์— ๋Œ€ํ•œ ์ˆ˜์—…์—์„œ ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์ผ์ง€ ๋งŒ , ์ƒ๊ธฐ์‹œ์ผœ๋„ ๋‚˜์˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Cat ํด๋ž˜์Šค ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค .

public class Cat {

   public String name;
   public int age;
   public int weight;

   public Cat(String name, int age, int weight) {
       this.name = name;
       this.age = age;
       this.weight = weight;
   }

   public Cat() {
   }

   public void sayMeow() {
       System.out.println("Meow!");
   }


}
์ง€๋‚œ ์ˆ˜์—…์—์„œ ์ด ์ˆ˜์—…์˜ ๋ฌธ์ œ์ ์ด ๋ฌด์—‡์ธ์ง€ ๊ธฐ์–ตํ•˜์‹ญ๋‹ˆ๊นŒ? ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด ๊ธฐ์–ตํ•ด ๋ด…์‹œ๋‹ค. ๋ฌธ์ œ๋Š” ๋ฐ์ดํ„ฐ(ํ•„๋“œ)๊ฐ€ ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์—ด๋ ค ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋Š” ๊ฐ€์ค‘์น˜๊ฐ€ 0์ด๊ณ  ๋‚˜์ด๊ฐ€ -1000๋…„์ธ ์ด๋ฆ„ ์—†๋Š” ๊ณ ์–‘์ด๋ฅผ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

public static void main(String[] args) {

   Cat cat = new Cat();
   cat.name = "";
   cat.age = -1000;
   cat.weight = 0;

}
์ด ์ƒํ™ฉ์—์„œ ๋™๋ฃŒ ์ค‘ ํ•œ ๋ช…์ด ์ž˜๋ชป๋œ ์ƒํƒœ์˜ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žˆ๋Š”์ง€ ์ฃผ์˜ ๊นŠ๊ฒŒ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ด๋Ÿฌํ•œ ์ž˜๋ชป๋œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ๊ฐ€๋Šฅ์„ฑ์กฐ์ฐจ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ์ข‹์Šต๋‹ˆ๋‹ค. ์บก์Šํ™”์˜ ์›๋ฆฌ - 4์šฐ๋ฆฌ๋Š” ๋‹ค์Œ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์€๋‹‰์„ ๋‹ฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  1. ์•ก์„ธ์Šค ์ˆ˜์ •์ž( ๊ฐœ์ธ, ๋ณดํ˜ธ, ํŒจํ‚ค์ง€ ๊ธฐ๋ณธ๊ฐ’ );
  2. ๊ฒŒํ„ฐ์™€ ์„ธํ„ฐ.
์šฐ๋ฆฌ๋Š” ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ณ ์–‘์ด์—๊ฒŒ ๋ถ€์ •์ ์ธ ๋‚˜์ด๋ฅผ ์ฃผ๋ ค๊ณ  ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๊ทธ๊ฒƒ๋“ค์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์•ž์—์„œ ๋งํ–ˆ๋“ฏ์ด ์บก์Šํ™”์— ๋Œ€ํ•œ ๋‹ค์–‘ํ•œ ๊ธฐ์‚ฌ์˜ ์ €์ž๋Š” ์‹ค์ œ๋กœ ์บก์Šํ™”(๋ฐ์ดํ„ฐ์™€ ๋ฉ”์„œ๋“œ ๊ฒฐํ•ฉ) ๋˜๋Š” ์ •๋ณด ์€๋‹‰ ๋˜๋Š” ๋‘˜ ๋ชจ๋‘๋ฅผ ์–ธ๊ธ‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Java์—๋Š” ๋‘ ๊ฐ€์ง€ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๋ชจ๋‘ ์žˆ์œผ๋ฏ€๋กœ(๋‹ค๋ฅธ OOP ์–ธ์–ด์—์„œ๋Š” ๋ฐ˜๋“œ์‹œ ๊ทธ๋Ÿฐ ๊ฒƒ์€ ์•„๋‹˜) ๋งˆ์ง€๋ง‰ ์˜ต์…˜์ด ๊ฐ€์žฅ ์ •ํ™•ํ•ฉ๋‹ˆ๋‹ค.

์บก์Šํ™”๋Š” ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์ด์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  1. ์˜ฌ๋ฐ”๋ฅธ ๊ฐœ์ฒด ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์œ„์—์„œ ์ด์— ๋Œ€ํ•œ ์˜ˆ๋ฅผ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. setter์™€ private ์ˆ˜์ •์ž ๋•๋ถ„์— ์šฐ๋ฆฌ๋Š” ๊ฐ€์ค‘์น˜๊ฐ€ 0์ธ ๊ณ ์–‘์ด์— ๋Œ€ํ•ด ํ”„๋กœ๊ทธ๋žจ์„ ๋ณดํ˜ธํ–ˆ์Šต๋‹ˆ๋‹ค.

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

  3. ์ฝ”๋“œ ๋ณ€๊ฒฝ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ ๋ชจ๋“  ๋ณ€๊ฒฝ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๊ฐ€์Šค๋ฅผ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด vehicle.gas()๋ฅผ ์ž‘์„ฑํ–ˆ๊ณ , ๊ณ„์†ํ•ด์„œ ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ gas() ๋ฉ”์„œ๋“œ ๋‚ด๋ถ€์—์„œ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ณ€๊ฒฝํ–ˆ๋‹ค๋Š” ์‚ฌ์‹ค์€ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์ „๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํ•„์š”ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.