item 16 sungjaeyoon - JAVA-JIKIMI/EFFECTIVE-JAVA3 GitHub Wiki
public ํด๋์ค์์๋ public ํ๋๊ฐ ์๋ ์ ๊ทผ์ ๋ฉ์๋(getter)๋ฅผ ์ฌ์ฉํ๋ผ.
class Point{
public double x;
public double y;
}
์ด์ฒ๋ผ ์ธ์คํด์ค ํ๋๋ค์ ๋ชจ์๋ ๋ชฉ์ ์๋ ํด๋ณดํ ํด๋์ค๋ฅผ ์์ฑํ๋ ค ํ ๋๊ฐ ์๋ค.
์ด๋ฌํ ํด๋์ค๋ ์ง์ ์ ๊ทผ์ด ๊ฐ๋ฅํ์ฌ ์บก์ํ์ ์ด์ ์ ์ ๊ณตํ์ง ๋ชปํ๊ณ , ๋ถ๋ณ์ ๋ณด์ฅํ ์ ์๋ค.
๊ฐ์ฒด์งํฅ์์๋ ์ด๋ฐ ํด๋์ค๋ฅผ ์๋นํ ์ซ์ดํด์
getter
๋ฅผ ์ถ๊ฐํ๋ค.
ํ๋๋ฅผ ๋ชจ๋ private๋ก ๋ฐ๊พธ๊ณ public ์ ๊ทผ์ ํ์ง๋ง package-private(ํจํค์ง์์๋ง ์ ๊ทผํ ์ ์๋๋ก) ํด๋์ค ํน์
private ์ค์ฒฉ ํด๋์ค(ํด๋์ค ์์ ํด๋์ค)๋ผ๋ฉด ๋ฐ์ดํฐ ํ๋๋ฅผ ๋
ธ์ถํ๋ค ํด๋ ํ๋ฑ์ ๋ฌธ์ ๊ฐ ์๋ค.
์ ๋ฆฌ
public ํด๋์ค๋ ์ ๋ ๊ฐ๋ณ ํ๋๋ฅผ ์ง์ ๋
ธ์ถํด์๋ ์๋๋ค.
ํ์ง๋ง pacakge-private ํด๋์ค๋ private ์ค์ฒฉ ํด๋์ค์์๋ ๋
ธ์ถํ๋ ํธ์ด ๋์ ๋๋ ์๋ค.