[기획자의 자바공부] 객체 지향 프로그래밍이란? #객체 #클래스

[JAVA] 객체 지향 프로그래밍이란?





안녕하세요.

글 쓰는 그니입니다.


오늘은 '객체지향 프로그래밍이란 무엇인가?' 라는 주제로 정리해보고자 합니다. 객체 지향프로그래밍이란 무슨 뜻일까요? 객체 지향 프로그래밍이 무엇인지 알아보기 전에, 객체가 무엇인지부터 알아보도록 하죠.


객체란?


객체란 세상에서 존재하는 모든 것을 뜻합니다. 지금 이 글을 쓰고 있는 저도 객체이고 이 글을 읽고 있는 여러분들도 객체입니다. 프로그래밍 상에서는 속성과 기능을 가지는 프로그램 단위라고 불립니다.


속성은 그 객체가 가지고 있는 단위를 이야기하고, 기능은 그 객체의 역할을 의미한다고 생각하면 됩니다. 


스마트폰이라는 객체가 있다고 해봅시다. 이 스마트폰은 액정, 배터리와 같은 속성을 가지고 있다고 말할 수 있으며, 통화를 할 수 있는 기능을 가지고 있다고 이야기할 수 있습니다.


이런 일상생활속에서의 객체를 프로그램 상에서도 객체라고 말 할 수가 있습니다. 계산기 프로그램이 있다고 한다면, 이 계산기 프로그램은 더하기, 빼기와 같은 속성이 있다고 말할 수 있습니다. 그리고 이 계산기 프로그램은 연산기능이라는 기능이 있다고 말할 수도 있습니다.


이처럼 객체는 특정한 목적을 이루기 위해 만들어진 것이라고 볼 수 있습니다. 이 목적을 이루기 위한 기능과 이 기능에 필요한 속성들이 있다고 보면 됩니다.



클래스란?


클래스란 객체를 생성하기 위한 프레임, 즉 틀이라고 생각하면 됩니다. 기능과 속성은 다르게 만들 수 있는 객체를 무수히 만들 수 있는 틀을 클래스라고 생각하면 됩니다.

이 클래스가 있다면, 여러분은 치킨이라는 객체를 후라이드 치킨, 양념 치킨, 간장 치킨 등 다양한 속성과 다양한 맛을 내는 기능을 가진 객체들로 만들어 낼 수 있씁니다. 



클래스 구성요소란?


클래스는 속성과 기능으로 구성됩니다. 여기에서 속성은 멤버변수라고 이야기 하고, 기능은 메서드라고 불려집니다.

자동차라는 클래스가 있다고 가정합시다.
이 자동차는 핸들, 시트, 트렁크등의 멤버변수가 있다고 할 수 있습니다. 그리고 가속과 브레이크라는 기능이 있다고 말할 수 있습니다.




이 글을 공유하기

댓글

Designed by JB FACTORY