우리는 이전 파트에서 자바의 기본 문법에 대해 알아보았다.
이번 파트에서는 데이터와 처리를 하나로 묶는 법! 객체지향 프로그래밍을 학습해보자.
객체지향 프로그래밍(Object-Oriented Programming)이란, 조립식 프로그래밍이다. 객체를 조립하여 전체 프로그램을 만드는 것이다.
조립식으로 프로그램을 만들면 좋다. 고장이 나도 해당 부분만 수리하면 된다. 또 기능을 추가할 때, 만들어서 끼워 넣으면 된다.
안 쓸 이유가 없다. 무조건 OOP로 프로그램을 만드는 게 답이다.
프로그램이 객체들의 조합으로 만들어짐을 배웠다. 그럼 객체는 뭘로 만들까? 정답은 클래스이다.
클래스란, 객체를 만들기 위한 설계도이다. 해당 설계도를 통해 만들어진 무언가! 이를 객체 또 다른 표현으로 인스턴스(instance)라 한다.
프로그램을 만들려면 여러 객체가 필요하다. 여러 객체를 만들려면, 객체별 클래스가 필요하다. 결과적으로, 프로그램을 만들기 위해서는 클래스를 잘 만들어야 한다.
클래스를 잘 만들려면 그 구조를 알아야 한다. 클래스는 두 영역으로 나뉜다. 상태를 정의하는 필드(fields)와 동작을 정의하는 메소드(methods)이다.
고양이를 클래스로 설계해보자. 아래와 같이 클래스를 도식화 한것을 클래스 다이어그램(class diagram)이라 한다.
이제 이를 코드로 구현해야 한다. 왜? 그래야 객체를 만들 수 있다.