객체 지향 프로그래밍 개요. 현대 프로그래밍의 패러다임으로 잡혀있고, 절차지향의 한계점을 극복하기위해 나타남. 절차지향 프로그래밍의 한계 데이터끼리 다루는 함수가 분리되어 있다. - 함수 내부에서 포인터로 데이터를 다뤄야 하는 불편함이 있다. 함수의 이름을 다르게 작성해야 한다. - 전역 이름공간을 사용하기에, 함수마다 이름을 다르게 지어주어야한다. 프로그램을 확장하기 불편하다. - 프로그램에 수정사항이 생기면, 포인터로 데이터 처리한 것들을 일일이 바꾸어주어야한다. 객체지향 4대 개념. 캡슐화 - 클래스(Class)를 통해 변수와 함수를 하나의 단위로 묶는 것을 의미한다. - 특징 : 이 클래스를 선언하고, 해당 클래스의 인스턴스를 통해 클래스 안에 포함된 멤버 변수와 메소드에 쉽게 접근할 수 있다. ..