const๋ ์์๋๊น ์ ์ธ๊ณผ ๋์์ ๊ฐ์ด ๋ถ์ฌ๋์ด์ผ๋ง ํ๋ ๊ฑด ์๊ณ ์์...
๊ทผ๋ฐ? abstract class๋ฅผ ๋ง๋๋ ์ด์ ๊ฐ ์ผ์ข ์ ์ธํฐํ์ด์ค ๋ฌถ์๋ง๋ฅ ๋ญ๊ฐ ํ์ํ์ง๋ฅผ ๋จผ์ ์ ํด๋๊ณ ์ถํ์ ๊ตฌ์ฒดํ์ํค๊ฒ ๋ค๋๊ฑฐ์์? ๊ด๋ฆฌ๋ฅผ ์ฉ์ดํ๊ฒ ํ๋ ค๊ณ . ๋คํ์ฑ์ด๋ผ๊ณ ๋ ํ๊ณ ...
๊ฐ์ ๋งฅ๋ฝ์์ ๋ ๊ฐ์ ํด๋์ค๋ฅผ ๋ง๋ค์ด์ค๊ฑด๋ฐ, ๋์์ ๊ฐ๋ ์ญ์น๋ ๋ค๋ฅด๊ฒ ํ๊ณ ์ถ์. ์๋ฅผ๋ค๋ฉด MIN MAX๊ฐ์ด ๋ค๋ฅด๋ค๊ฑฐ๋. Aํด๋์ค์ ์ต์์ต๋๋ 0/100์ธ๋ฐ Bํด๋์ค๋ 0/50์ธ๊ฑฐ์.
๋์ ๋์์ ๋ ๊ฐ๊ฐ ๋๊ฐ์ด ์ํํจ. ์๋ฅผ๋ค๋ฉด ํ๋๋ ์ฒด๋ ฅ ๊ฒ์ด์ง ํ๋๋ ๋ง๋ ฅ ๊ฒ์ด์ง. ๊ฒ์ด์ง๊ฐ ์ฑ์์ก๋ค ์ค์ด๋ค์๋ค ํ๋ ๋์์ ๋๊ฐ์ผ๋๊น...
์ด ๋ ์ด๋ก ์์ผ๋ก๋ ์ด? protected abstract const int MAX; ์ ์ธํด๋๊ณ ์์ ํด๋์ค์์ override ์์ผ์ฃผ๋ฉด ์ฐธ ์ข์ ๊ฒ ๊ฐ์๋ฐ
const๋ ๊ทธ๋ฐ์์ผ๋ก ๋์ํ์ง ์๋๋จ ๋ง์ด์ง... ๋ฌด์กฐ๊ฑด ์ ์ธํ์ผ๋ฉด ๊ฐ์ ๋ฃ์ด์ค์ผํ๋จ๋ง์ด์ง...
๋ฌผ๋ก protected int MAX;๋ก ์ ์ธํด์ ์ฌ์ฉํด๋ ๋๊ฒ ์ง๋ง, ์ด๋ฌ๋ฉด ์ด๊ฒ ์์๋ผ๋ ๊ฑธ ๋ช ํํ๊ฒ ํด ์ค ์๊ฐ ์๊ณ ( ๋ ์ด๊ฑธ ํ์คํ๊ฒ ๋ชป๋ฐ์๋๊ณ ์ถ์ด ).
๊ทธ๋ ๋ค๊ณ ๊ฐ ์์ ํด๋์ค์์ ๊ฐ๋ณ์ ์ผ๋ก protected const int MAX;๋ฅผ ์ ์ธํ์๋ ์ถ์ํด๋์ค๋ฅผ ์ฌ์ฉํ ์๋ฏธ๊ฐ ํด์๋๊ณ .
์ ์ ํ ํด๊ฒฐ๋ฒ ์์๊น?
readonly๋ก ํ๋ฉด ์ด๋ฐ
์ธํฐํ์ด์ค๋ก ํ๊ณ get ํ๋กํผํฐ๋ก ์๊ตฌํด
const ์์ฐ๊ณ ์ธ๋ถ์์ ๊ฒํฐ๋ง ์ธ ์ ์๋๋ก ํ๋ฉด ๋ ๊ฑฐ ๊ฐ์๋ฐ - dc App