접근 제어자(Access Modifier)는 객체 지향 프로그래밍에서 클래스, 메서드, 변수 등의 접근 수준을 제어하기 위해 사용되는 키워드이다. 접근 제어자를 통해 외부에서 해당 멤버에 접근할 수 있는 범위를 지정할 수 있다. 이를 통해 데이터 캡슐화와 정보 은닉을 실현할 수 있으며, 자바에서는 주로 네 가지 접근 제어자가 있다. public접근 범위: 모든 클래스설명: public으로 선언된 멤버는 모든 클래스에서 접근 가능하다. 패키지나 클래스에 상관없이 어디서든 접근할 수 있다. protected 접근 범위: 동일 패키지, 서브클래스설명: protected로 선언된 멤버는 같은 패키지 내의 다른 클래스와 다른 패키지에 있는 서브클래스에서 접근 가능하다. 즉, 상속을 통해 접근 범위를 넓힐 수 있..
앞선 글에서 캡슐화의 목적이 데이터의 은닉 데이터의 보호 라는 것을 언급했다. Getter와 Setter 메서드는 이 캡슐화의 목적을 달성하면서도 클래스 내부의 변수에 접근하고 싶을 때 사용하는 방법이다. 즉, 외부에서 데이터로의 직접 접근이 아닌 메서드를 통한 간접 접근을 가능하게 만들어주는 메서드라 할 수 있다. 아래의 예를 보자. public class GetterSetterTest { public static void main(String[] args) { Worker w = new Worker(); w.setName("김코딩"); w.setAge(30); w.setId(5); String name = w.getName(); System.out.println("근로자의 이름은 " + name); ..
캡슐화 캡슐화는 상속과 마찬가지로 자바 객체지향 프로그래밍의 중요 개념 중 하나이다. 먼저 간단하게 정의하자면, 캡슐화란 관련이 있는 필드와 메서드를 하나의 클래스로 묶어 데이터를 외부로부터 보호하는 일이다. 구체적으로 나누자면 첫 째로는 데이터 보호, 두 번째로는 내부 데이터의 불필요한 노출 방지에 그 목적이 있다. 즉, 캡슐화의 가장 큰 장점은 데이터 은닉(data hiding)에 있다고 볼 수 있다. 외부로부터 객체의 필드와 메서드가 함부로 변경 되는 것을 막고, 데이터가 변경 되더라도 다른 객체에 영향을 주지 않도록 할 수 있다. 이는 코드 확장시에 오류를 최소화 하는데 도움이 되며, 당연히 유지보수에도 장점이 된다. 패키지 패키지(Package)는 관련이 있는 클래스와 인터페이스의 묶음을 의미한..
- Total
- Today
- Yesterday
- 세계여행
- 면접 준비
- 맛집
- 알고리즘
- 스트림
- Algorithm
- 리스트
- 동적계획법
- 자바
- RX100M5
- 유럽여행
- 스프링
- 기술면접
- 세모
- 중남미
- java
- Backjoon
- 남미
- 여행
- spring
- 야경
- 백준
- 지지
- 유럽
- 세계일주
- BOJ
- 칼이사
- Python
- 파이썬
- a6000
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |