# 접근 제한자와 게터 세터
## 들어가며..
---
만약 당신의 지갑이 누구에게나 공개되어있다면..? 생각만 해도 끔찍하다.
![클라우드스터딩-자바-접근-제한자-지정자-modifier](https://i.imgur.com/7LrA4sG.png)
프로그램에서 또한 마찬가지다. 어떤 건 공개해도 되지만, 어떠한 것은 감추어야만 한다. 이를 위한 개념을 배워보자.
1. 접근 제한자란
2. public과 private
3. 게터와 세터
## 1. 접근 제한자란
---
#### 무엇?
접근 제한자란, 접근 권한을 제한하는 키워드다.
#### 왜씀?
여러분의 지갑이 모두에게 공개돼있다면? 또는 여러분의 개인 정보가 외부에 모두 알려졌다면 어떨까? 안될 것이다. 이를 해결하기 위한 키워드. 바로 접근 제한자다.
#### 종류?
접근 제한자의 종류는 총 4가지로, 외부 접근을 거부하는 private(비공개)에서부터 모든 접근을 허용하는 public(완전 공개)까지 존재한다.
![클라우드스터딩-자바-접근제한자-종류-private-default-protected-public](https://i.imgur.com/rnpOQPj.png)
## 2. public과 private
---
#### 무엇?
public 키워드는 완전한 공개를 의미한다. 모두가 사용할 수 있는 공공의 산물이 되는 것이다. 이와 반면 private은 비공개를 의미한다. 오직 해당 클래스 내부에서만 사용할 수 있게 된다.
![클라우드스터딩-자바-접근제한자-public-private](https://i.imgur.com/HH6B1QL.png)
#### 적용 및 장점
접근 제한자는 필드와 메소드에 적용될 수 있다. public 선언되면 외부의 접근이 가능하나, private의 경우 외부 접근이 불가능하다.
![클라우드스터딩-자바-public-vs-private-비교-차이](https://i.imgur.com/ALzAH4M.png)
이를 통해 외부의 악의적 접근을 예방할 수 있다.
## 3. 게터와 세터
---
#### 필요성?
private 선언된 필드는 외부 접근이 불가능하다. 심지어 정상적인 사용자도 직접 접근할 수 없다. 이를 해결하기 위해 게터와 세터가 필요하다.
![클라우드스터딩-자바-게터-세터-필요성](https://i.imgur.com/6C1oT57.png)
#### 역할?
게터와 세터를 사용하면, private 필드를 우회하여 가져오거나 변경할 수 있다.
![클라우드스터딩-자바-게터-세터-역할](https://i.imgur.com/Se0SR2S.png)
## 요약
---
![클라우드스터딩-접근제한자-게터-세터-요약](https://i.imgur.com/lH6c84w.png)
#### 접근 제한자
- 접근 제한자란, 외부로부터 접근을 제어하는 키워드이다.
- 접근 제한자의 종류는 4가지로, private/default/protected/public 이 있다.
- private은 비공개, public은 완전 공개를 의미한다.
#### 게터와 세터
- private 필드는 외부 접근이 불가능하다
- 게터를 사용하면 private 필드를 우회적으로 가져올 수 있다.
- 세터를 사용하면 private 필드를 우회적으로 변경할 수 있다.
## 확인하기
---
<div class="interact_responsive_padding" style="padding:100% 0 0 0;position:relative;margin-bottom:5px;"><div class="interact_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe id="interactApp5cf501784151a70014a87dc6" width="100%" height="100%" style="border:none;max-width:100%;margin:0;" allowTransparency="true" frameborder="0" src="https://quiz.tryinteract.com/#/5cf501784151a70014a87dc6/q/1?method=iframe"></iframe></div></div>
## 도서구매
<a href="http://www.yes24.com/Product/Goods/104740689"><img src="http://image.yes24.com/goods/104740689/XL" width="50%" /></a>