public ์ฒ๋ฆฌํ๋ฉด ๋์์.... ์ ๋ํด์ ํ์ ์ ๊ฒฝ์ฐ ๊ฑด๋๋ฆฌ์ง ๋ง์์ผ ํ ๋ณ์์ด๊ธฐ ๋๋ฌธ์ private๋ก ๊ด๋ฆฌํ๋ค... ๋ ๊ฒ ์ ๋๋ ์๊ฒ ์.
๊ทผ๋ฐ ๊ฒฐ๊ตญ get; set;์ ํตํด์ ์ ๊ทผํ๋ฉด ๊ทธ๊ฒ๋ ๊ฐ์ ๋ฐ๊พธ๋ ๊ฑฐ ์๋?
set์ด ๋ค์ด๊ฐ ์๊ฐ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ ๊ฑฐ์์.
์๋ ๋ญ ๊ฐ์ ์กฐ์์ด ํ์ํ ๊ฒฝ์ฐ(์๋ฅผ ๋ค์ด ๋ฌผ๊ฑด์ ๊ฐ์๋ฅผ set์ผ๋ก ๋ฐ์์ ์์๊ฐ ๋์ค๋ฉด ์ ๋๋ ๊ฒฝ์ฐ)์๋ ์กฐ์์ด ํ์ํ๋๊น ๋ฃ์ ์ ์๋ค๊ณ ์ณ๋
๊ทธ๋ฅ private number {get; set;} ์ผ๋ก ์ฐ๋ ๊ฒฝ์ฐ๋ ์๋๋ฐ
๊ทธ๋ฐ ๊ฒฝ์ฐ๋ ์ ๊ตณ์ด ๊ทธ๋ ๊ฒ ์ฐ๋ ๊ฑด์ง ์ดํด๊ฐ ์ ๊ฐ;;
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์๋ ๊ถ๊ธํด์... ํน๋ณํ ์ด์ ๊ฐ ์๋์ถ์ด์
๊ฒํฐ์ ์ธํฐ๊ฐ ๋ง๋ค์ด์ง๋ฐ์๋ ๋ถ๋ช ์ด์ ๊ฐ ์์ํ ๋ฐ ๊ทธ๊ฒ ๋ญ์ง ๊ถ๊ธํด์
get์ด๋ set ํ๋์ํฉ์ ๋๋ฒ๊ทธ๋ก๊ทธํ์ํ ๋ ์กด๋์ข์
์ ์ด๋ง ํธ์ถํ๋์ง ์ ์ ์์ด์?? ๊ทธ๊ฑด ๋ง๋ค...
๋๋ฒ๊น ์ด ํธํ์์์. ๋ก๊ทธ์ฐ๊ธฐ๋ ์ฝ๊ณ
๊ทธ๋ฆฌ๊ณ .. ๊ทธ ๋ณ์๋ฅผ public์ผ๋ก ํ๋ฉด ์ด ๊ฐ์ด ์ธ์ ๋ฐ๋๋์ง ์ถ์ ํ ๋ ค๋ฉด ๋ณ์ ๋ ํผ๋ฐ์ค ๋ฐ๋๊ณณ ๋ค ์ฐพ์์ผํ๋๋ฐ set์ผ๋ก ์ ๊ทผํ๋ฉด setํจ์์ ๋๋ฒ๊น ํ๋ฉด๋์์
๊ทผ๋ฐ vscode์ฐ๋ฉด ๋ชจ๋ ๋ณ์์ ๋ค ๋ ํผ๋ฐ์ค ๋ฌ๋ฆฌ์ง์๋์??
์.... ๊ทธ๊ฑด ๋ง๋ค์ ๋๋ ์ ์๊ฐํด๋ณผ ์ ์๋ค์๊ฑฐ๊ธฐ๊ฐ์ง ์๊ฐ ๋ชปํ์ต๋๋ค ๊ฐ์ฌํฉ๋๋ค ใ ใ
Cpp์ setvalue์ด๋ฐ์์ผ๋ก ํจ์๋ง๋๋๋ฐ ์ด๊ฑฐ ์งง๊ฒํ๊ฑฐ์ง
์ฝ๋ฉ ํ๋ค๋ณด๋ฉด ์๊ฒ๋จ
๋๋ ์ฝ๋ฉ ์ฒ์ ๋ฐฐ์ธ ๋ ๊ทธ๋ฅ public ๋ก์น ํ๋ฉด์ ํคํค ํธํ๋ค ์ด๋ฌ๋๋ฐ ์ด๋์ ๋ ๊ฐ๋ฐ ์งํ๋๋๊น public์ผ๋ก ์ ์ธํ ์ด ๋ณ์๊ฐ ์ด๋์ ์ฐธ์กฐ๋๊ณ ์๋์ง ์์ ํด๋ ๋๋๊ฑด์ง ์ด ๋ณ์ ๋๋ฌธ์ ๋ฒ๊ทธ๊ฐ ์๊ธฐ๊ณ ์๋๊ฑด์ง ํท๊ฐ๋ ค์ ์ด์ง๊ฐํ ๊ฑด private๋ก ๋ง๋ค๊ณ public ์จ์ผ ๋๋ ๊ฑด getset ์จ๊ฐ๋ฉด์ ๋ง๋ค๊ณ ์์
ํ๋กํผํฐ๋ ์ ๊ตฌ๋ ์ถ๊ตฌ๋ฅผ ๋ฐ๋ก ๊ตฌ๋ถ์ง์ด๋๋๊ฑฐ์ ๊ทธ๋ฅ ์ฉ public ์ผ๋ก ์๋ฆฌ๋ฉด ๊ตฌ๋ฉ๋ง ๋ซ๋ ธ๋คํ๋ฉด ์๋ค๊ฐ๋ค ํ๋๋ฐ ์ ๊ตฌ ์ถ๊ตฌ๋ฅผ ๋๋ ๋์ผ๋ฉด ์ถ์ ํ๊ธฐ ์ฉ์ดํ๊ฒ ์ง
๊ทผ๋ฐ ์์ฆ ๊ฐ์๋ค์ด๋ ์์ ๋ค ๋๋ฌด ๋ถ์น์ ํ์ง ์๋? ์ด๊ธฐ๋ถํฐ ํด์๋ ์ฌ๋๋ค์ ๊ทธ๊ฒ ์ ํ์ํ๊ฑฐ๊ณ ์ด๋์ ์จ์ผํ ์ง ๊ฐ์ด ์กํ๋๋ฐ ๋ฐฐ์ฐ๋ ์ฌ๋ ์ ์ฅ์์๋ ์ ๋ฐฐ์์ผํ๋์ง๋ ๋ชจ๋ฅด๊ณ ๊ทธ๋ฅ ์ฃผ์ ๋ฐ๊ธฐ๋ง ํ๋๊น ์ ํ์ํ์ง๋ ๋ชจ๋ฅด๊ณ ๊ทธ๋ฅ ์ผ๋จ ํ๋ผ๋๊น ํจ
ใ ใ ใ ใ ใ ใ ใ ใ ์ง์ง ๊ฒํฐ์ธํฐ ์บก์ํ ์ด ๊ฐ๋ ์กด๋ ์ด๋ ต๊ฒ ์ค๋ช ํ๊ณ ์ฑ ์ ๋์จ๋๋ก๋ง ์ต๋ฌด์์ฒ๋ผ ์๋ ์๊ธฐ๋ค ๋๋ฌด๋ง์์ ์ํ์ฐฉ์ค ๊ฒช์ผ๋ฉด์ ๊นจ๋ซ๋๋ฐ1๋ ๊ฑธ๋ ธ๋ค
์... ํ์คํ๊ฒ ์๊ฒ ๋ค์ ์ด์ ๊ฐ์ฌํฉ๋๋ค!! ์๋ ์ง์ง ์ ์ฐ๋๊ฑด์ง๋ ๋ค๋ค ๋ช ํํ๊ฒ ์ ๋งํด์ฃผ๊ณ ๋๋ฃจ๋ญ์ ํ ์ธ๊ธ๋ง ์์ด์(๊ฐ์๋ ์ฑ ์์) ๋๋ฌด ๋ต๋ตํ๋๋ฐ ์ฌ๊ธฐ๊ณ์ ๋ถ๋ค ๋ต๋ณ๋ฃ๊ณ ์ข ๋ช ๋ฃํด์ง ๊ฒ ๊ฐ์ต๋๋ค ๊ฐ์ฌํฉ๋๋ค...
1. ํ๋กํผํฐ๋ก ๋ง๋ค๋ฉด, ๊ทธ ๋ณ์๋ฅผ ๋ง๋ ์ฌ๋์ ์๋๋ฅผ ํํํ ์ ์์. ๊ทธ๋ฅ public์ผ๋ก ๋ง๋ค๋ฉด ์ด๊ฑธ ์์ ํด๋ ๋๋์ง ๋ถ์ํ ๊ฐ์ด ์๊น.
2. ์ด๋ค ํ๋๋ฅผ ๋์ค์ ํ๋กํผํฐ๋ก ๋ฐ๊พธ๋ฉด ๊ทธ ํ๋๋ฅผ ์ฌ์ฉํ๊ณ ์์๋ ์ฝ๋๋ฅผ ์ ๋ถ ๋ค ์์ ํด์ผํจ. ๊ทธ๋์ ์คํ ํ๋กํผํฐ๋ก ๋ฏธ๋ฆฌ ๋ง๋ค์ด ๋์ผ๋ฉด ์ด๋ ์ํฉ์ ๋ฐฉ์ง๊ฐ๋ฅ. 3.์ฌ์ค public์ด ์ฑ๋ฅ์ด ๋ ์ข๊ธฐ ๋๋ฌธ์ update๋ฌธ์ฒ๋ผ ์ด๋น ๋ช๋ฐฑ๋ฒ ์ ๊ทผ/์์ ํ ๋๋, ํ๋กํผํฐ๋ณด๋ค public์ ์ฐ๋ผ๊ณ ํจ
4. ์ด๋ค๊ฑด set์ด ์๋๋ผ get๋ง ํ์ํ ๊ฒฝ์ฐ๊ฐ ์๋๋ฐ, ์ด๊ฒฝ์ฐ public์ผ๋ก ํ๋ฉด set๋ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ดํ ๋ฌธ์ ์๊ธธ ๊ฐ๋ฅ์ฑ์ด ๋์ ์ด๋๋ public int Count => mCount; ์ด๋ ๊ฒ ์ฝ๊ฒ ํํํ๋ฉด ๋จ.
5. ํนํ C++ ๊ณ์ด์ ์ธ์ด๋ผ๋ฉด ํจ์์ ๊ธฐ๋ณธ๋์์ด ๊ฐ์ํจ์๊ฐ ์๋๊ณ , ์ปดํ์ผ๋ฌ ์ต์ ํ๊ฐ ์ ๋์ด์์ด์ getter/setter๋ฑ์ ํจ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ ๋จน์ง๋ ์๋๊ฐ ๋๋ ค์ง์ง๋ ์์
์๋๋ ํ๋๋ ์ ๋ถ private์ผ๋ก ํด๋๊ณ getter setter ํจ์๋ฅผ ํตํด ๊ฐ์ ์ ์ผ๋ก ๊ฐ์ ์์ ํ์. ๊ทผ๋ฐ c#์์ ํธ์๋ฅผ ์ํด ๋ฌธ๋ฒ์ ์ถ๊ฐํ๊ฑฐ์
ํผ์ํ๋ฉด ์๊ด ์์. ์ฌ๋ฟ์ด์ ํ ๋ ์กด๋ ํฐ ๋ฌธ์ ๊ฐ ๋์ง