glog : cupucharm

[Java] 객체 지향 프로그래밍 본문

java/기본문법

[Java] 객체 지향 프로그래밍

오이호박참외 2025. 1. 17. 19:00

🚗 객체 지향 프로그래밍과 절차 지향 프로그래밍

객체 지향 프로그래밍과 절차 지향 프로그래밍은 서로 대치되는 개념이 아니다. 다만, 어디에 더 초점을 맞추는가에 차이가 있다.

객체 지향의 경우 객체의 설계와 관계를 중시한다. 반면, 절차 지향의 경우 데이터와 기능이 분리되어 있고, 프로그램이 어떻게 작동하는지 그 순서에 초점을 맞춘다.

절차 지향 프로그래밍 객체 지향 프로그래밍 둘의 중요한 차이
이름 그대로 절차를 지향
실행 순서를 중요하게 생각하는 방식
이름 그대로 객체를 지향
객체를 중요하게 생각하는 방식
절차 지향은 데이터와 해당 데이터에 대한 처리 방식이 분리되어 있다.

반면 객체 지향에서는 데이터와 그 데이터에 대한 행동(메서드)이 하나의 객체 안에 함께 포함되어 있다.
프로그램의 흐름을 순차적으로 따르며 처리 실제 세계의 사물이나 사건을 객체로 보고, 이러한 객체들 간의 상호작용을 중심으로 프로그래밍
"어떻게"를 중심으로 프로그래밍 "무엇을" 중심으로 프로그래밍

🚕 객체

세상의 모든 사물을 단순하게 추상화해 보면 속성(데이터)과 기능 딱 2가지로 설명할 수 있다.


🚙 객체 지향 프로그래밍

객체 지향 프로그래밍은 모든 사물을 속성과 기능을 가진 객체로 생각하는 것이다. 객체에는 속성과 기능만 존재한다.

객체 지향의 특징은 속성과 기능을 하나로 묶는 것뿐만 아니라 캡슐화, 상속, 다형성, 추상화, 메시지 전달과 같은 다양한 특징들이 있다.

'java > 기본문법' 카테고리의 다른 글

[Java] 기본형과 참조형  (1) 2025.01.15
[Java] Java Switch 표현식(switch expression)  (0) 2024.08.24