ํฌ๊ฒ ์ธ ๊ฐ์ง๊ฐ ์์. ์ ๋ณด์๋, ์ฝ๋์ ์ฐ์ฑ, ์ฝ๋์ถ์
[1. ์ ๋ณด์๋]
๋ฒํผ์ ๋๋ฅด๋ฉด ๊ณต์ง๋ก ์๋ฃ์๋ฅผ ์ฃผ๋ ์ํ๊ธฐ๊ฐ ์๋ค๊ณ ํ์.
Buy() ๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ์ฌ๊ณ ๋์ด ํ๋์ฉ ์ค์ด๋๋ ๊ฐ๋จํ ํด๋์ค์
ํ์ง๋ง ์๋ค์ํผ ์ฌ๊ธฐ์ ๋ฌธ์ ์ ์ด ์์
๊ตณ์ด Buy() ๋ฉ์๋๋ฅผ ๊ฑฐ์น์ง ์์๋ drink ๋ณ์์ ๊ฐ์ ์์ ํ ์ ์์
์ค์ง ๋๊ตฐ๊ฐ๊ฐ ๋ฒํผ์ ๋๋ ์ ๋๋ง ์ฌ๊ณ ๋์ด ๊ฐ์ํ๊ธธ ์ํ๋ฏ๋ก
๋ณดํต drink ๋ณ์๋ฅผ private๋ก ์ ์ธํ์ฌ ์ธ๋ถ์์์ ์ ๊ทผ์ ์ฐจ๋จํ๋ ๊ฒ์ผ๋ก ์ํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํจ
๊ฑฐ์ ๋๋ถ๋ถ์ ํ๋(๋ฉค๋ฒ๋ณ์)๋ ์ด๋ ๊ฒ ์ธ๋ถ์์ ์ ๊ทผํ์ง ์๊ธฐ๋ฅผ ์ํ๋ ์ ๋ณด๋ค์ด ๋๋ถ๋ถ์ด๊ณ
๊ทธ๋์ ๊ฐ์ฒด์งํฅ์๋ public, protected, private ๊ฐ์ ์ ๊ทผ์ ํ์ง์์ ๊ฐ๋ ์ด ์กด์ฌํ๋ ๊ฑฐ์
์ด ๊ทธ๋ฐ๋ฐ ํ์ฌ ์ฌ๊ณ ๋์ ํ์ธํ ์ ์์์ผ๋ฉด ์ข๊ฒ ์
์ธ๋ถ์์ drink๋ฅผ ์์ ์ ๋ชปํ๊ฒ ํ๊ณ ๊ทธ๋ฅ ๊ฐ๋ง ์ป์ ์ ์์ผ๋ฉด ์ข๊ฒ ์
๊ทธ๋์ GetDrink() ๋ฉ์๋๋ฅผ ๋ง๋ฌ
์ด๊ฒ ๋ฐ๋ก ๊ฒํฐ์
[2. ์ฝ๋์ ์ฐ์ฑ]
์ฌ๊ณ ๋์ ๋ค์ ์ถฉ์ ํ ์ ์๋๋ก Add ๋ฉ์๋๋ฅผ ๋ง๋ค์์
๊ทธ๋ฆฌ๊ณ ํ์ ์ฌ๋ถ๋ฅผ ๋ํ๋ด๋ ์ ๋ณด๋ฅผ ์ถ๊ฐํ๊ณ
drink๊ฐ 0์ด๋ฉด Buy() ๋ฉ์๋๊ฐ ์คํ๋์ง ์๊ฒ ํจ
์ ๊ทผ๋ฐ ์ฌ๊ณ ๋์ด ๋ฐ๋๋๋ง๋ค ๋ก๊ทธ๋ฅผ ์ถ๋ ฅํด์ ํ์ฌ ์ฌ๊ณ ๋์ด ํญ์ ํ๋ฉด์ ๋์ค๊ธธ ์ํจ
๊ทธ๋์ ๋ ๊ณ ์นจ
๋ฌธ์ ์ .
์ค๋ณต์ฝ๋๊ฐ ๋์ด๋๊ณ , ๊ธฐ๋ฅํ๋ ์ถ๊ฐํ๋ ค๊ณ Buy() ๋ฉ์๋์ Add() ๋ฉ์๋๋ฅผ ํจ๊ป ์์ ํ๊ณ ์์
๋ง์ฝ ์ฝ๋๊ฐ ๋ ๋ณต์กํด์ง๋ค๋ฉด ์ ์ ํค๊น๋ฆฌ๋ค๊ฐ ๋นผ๋จน๋ ๋ถ๋ถ๋ ๋ถ๋ช ์๊ธธ๊ฑฐ์
์ฐ๋ฆฌ ์ธ๋ถ์ด๋ค์ ์ฝ๋๊ฐ ์คํ๊ฒํฐ๊ฐ ๋๋ ์ด์ ์
ํด๊ฒฐ.
SetDrink() ๋ผ๋ ๋ฉ์๋๋ฅผ ๋ง๋ค๊ณ ๊ฑฐ๊ธฐ์ ๋ก๊ทธ์ถ๋ ฅ๊ณผ ํ์ ์ฌ๋ถ๋ฅผ ๋ชจ๋ ๊ด๋ฆฌํจ
๊ทธ๋ฆฌ๊ณ Buy()์ Add()๋ SetDrink()๋ฅผ ํธ์ถํจ.
์ฝ๋์ ์๋ฏธ๋ ๋ช ํํด์ก๊ณ ์์ผ๋ก drink ๋ณ์๊ฐ ์์ ๋ ๋ ํ ์ผ์ด ์๋ค๋ฉด ๊ทธ๋ฅ SetDrink() ๋ฉ์๋๋ง ์์ ํ๋ฉด ๋จ
์ด๊ฒ ์ธํฐ์.
[3. ์ฝ๋์ถ์ ]
ํ๋ก์ ํธ๊ฐ ์ปค์ง๊ณ ์ฝ๋๊ฐ ์์ฒญ ๋ง์์ง.
๊ทธ๋ฐ๋ฐ ๊ฐ์๊ธฐ drink ๋ณ์์ ๊ฐ์ ์์ ํ๋ฉด ์ ๋ ์๋๋ ๊ฑธ๋ก ์ฌ์์ด ๋ฐ๋.
๋คํ ์ฐ๋ฆฌ์ ์ธ๋ถ์ฟค์ ๊ฒํฐ์ธํฐ๊ฐ ์๋ฌดํผ ์ข๋ค๊ณ ๋ค ํ๋๊น ์ด์ ๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง ๊ฒํฐ์ธํฐ๋ฅผ ์ด์ฌํ ์จ์์
๋๋์ด ์ธ๋ถ์ฟค์ ๊ทธ ๋ ธ๋ ฅ์ ๋ณด์์ ๋ฐ์ ์ ์๊ฒ ๋๊ฑฐ์
์ธํฐ๋ฅผ ์ฃฝ์ฌ๋ฒ๋ ธ๋๋ drink ๊ฐ์ ๋ณ๊ฒฝํ๋ ๋ถ๋ถ์ ์ ๋ถ ์ปดํ์ผ ์๋ฌ๊ฐ ๋ฐ์ํจ
๋ค๋ฅธ๊ฑฐ ์ ๊ฒฝ์ธ ํ์ ์์ด ์ ๋ถ๋ถ๋ง ๊ณ ์น๋ฉด ๋จ
๋ง์ฝ์ ๊ฐ์ด ์์ ํ๋ ๋ค๋ฅธ ์ธ๋ถ์ฟค์ด ์์๋ค๋ฉด '๋ ์ด์ ๋ถํฐ ๊ฐ ๋ณ๊ฒฝ ํ์ง๋ง' ๋ผ๊ณ ๊ฐ์ํ๋ ๊ฒ๋ ๊ฐ๋ฅํ ๊ฑฐ์
์๋ฌดํผ ๊ฒฝํ์ ์ผ๋ก ๊ฒํฐ์ธํฐ๋ ์กด๋ ์ข๊ณ , ๊ทธ๋์ ์ฐ์๋๋ฐ
๋ณ์๊ฐ 10๊ฐ๋ฉด ๋ฉ์๋๋ 20๊ฐ๊ฐ ์ง์ ๋ถํ๋ค๋ ๋จ์ ์ด ์์
C++์ด๋ ์๋ฐ ์ฝ๋ ๋ณด๋ฉด ํด๋์ค๋ง๋ค ๋ช๋ฐฑ์ค์ด ๋๋๋ฐ ๊ฑฐ์ ๋๋ถ๋ถ ๊ฒํฐ๋์ธํฐ์
๊ทธ๋์ C#์์ ์ ๊ณตํ๋ ๋ฌธ๋ฒ์ ์ธ ํธ์๊ธฐ๋ฅ์ด ํ๋กํผํฐ์
์์ฝ
1. ๊ฒํฐ์ธํฐ๋ฅผ ์ฐ๋ฉด ์ฝ๋๊ฐ ์ ์ฐํด์ง๊ณ , ๊ฐ ๋ณ๊ฒฝ ์ถ์ ์ด ์ฌ์
2. ๊ทธ๋์ ์ ์ฉ๋๋ ์ปจ๋ฒค์ ์ด์๋๋ฐ ๋ณ์๊ฐ ๋๋ฉด ๊ฒํฐ์ธํฐ๋ก ๋๋ฐฐ๊ฐ ๋๋ ๋ฌธ์ ๊ฐ ์์
3. ๊ทธ๋์ C#์ ํ๋กํผํฐ๋ผ๋ ๋ฌธ๋ฒ์ ํธ์๊ธฐ๋ฅ์ ์ ๊ณตํจ
์ ์ฑ์ถ. ๊ทธ๋์ ์ฝํ๋ฆฐ ๋ฑ์ private ์ ์ธํ๋ฉด ๊ฒํฐ,์ธํฐ๊ฐ ๋ด๋ถ์์ ์๋์ผ๋ก ๋ง๋ค์ด์ง
์ผ๋จ ์์ผ์. ๊ทผ๋ฐ java ๊ฐ ์กฐ์ค์ค์ฌ๋ผ ๋ณ์ ๊ฐ์ ์ด์ ์ค ํ๋๊ฐ ์ ๋ด์ง๊ฑฐ๋ฆฌ์ ใ ใ ใ - dc App
๋ฐฐ๋ณด๋ค ๋ฐฐ๊ผฝ์ด ํฌ๊ณ ์ฃ๋ค ์กฐ์ค์ค์ค์ค์จ๋ ์ง์ ๋ถํจ ใ ใ ใ ใ ใ ๊ฐ์ฒด์งํฅ์ ๊ฐ์ฅ ๋ณ์ ๊ฐ์ ๊ตฌํ์์๊ฐ java ๊ฐ ์๋๊น ํจ - dc App
๋ณด์ด์ค๋ก์ด๋ ๊ฐ์ ์๊น์ ์ฐ๋ค
์๋ณด๊ฒ ์ต๋๋ค ๊ฐ๊ฐํฉ๋๋ค - dc App