일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- hash table
- greedy
- bit manipulation
- Stack
- Method
- Binary Tree
- database
- 파이썬
- string
- dynamic programming
- Tree
- Number Theory
- 자바
- java
- simulation
- Matrix
- 코테
- sorting
- Class
- Counting
- implement
- two pointers
- Math
- SQL
- geometry
- 코딩테스트
- array
- 구현
- Data Structure
- Binary Search
- Today
- Total
목록Encapsulation (2)
코린이의 소소한 공부노트
접근 제어자는 해당 클래스/변수/메서드의 접근 범위를 정해준다. 이는 아래 글에 자세히 설명되어있다. 2022.04.16 - [Java] - 제어자 왜 접근 범위를 설정해줘야 하는 것일까? 그 이유는 1. 외부로부터 데이터를 보호하기 위해서 2. 내부적으로는 사용되지만 외부에는 불필요한 부분을 감추기 위해서다. 여기서 밑줄 친 부분을 캡슐화라고 한다. 예를 들어보자. 시간, 분, 초가 멤버 변수로 있는 Time 클래스를 만든 후, 시간 설정을 해보려 한다. class Time{ public int hour; // 0시 ~ 23시 public int minute; // 0초 ~ 59분 public int second; // 0초 ~ 59초 } public class Test{ public static vo..
전에 주를 이루던 코볼(Cobol), 포트란(Fortran), C언어 등은 코드를 위에서 아래로 순서대로 실행하는 절차적 프로그래밍 언어다. 그러나 이런 언어들은 빠르게 변화는 시스템의 요구를 쫓아가지 못해 점차 쓰지 않게 되었다. - 절차 지향 언어는 코드의 재사용성이 크게 떨어진다. - 적은 노력으로 변경에 대응할 수 있는 유지보수성이 떨어진다. 이에 대한 해결책으로 도입하게 된 것이 시뮬라(Simula), 스몰톡(Smalltalk) 등의 객체지향 언어였다. C언어도 이후 C++로 발전했으나 받아들이기 어려웠던 부분들이 있어 이런 단점을 보완해 자바(Java)가 나오게 되었고, 이보다 더 간결하면서 직관적인 파이썬(Python)까지 이어지게 되었다. 객체지향 프로그래밍(Object-oriented p..