코딩항해기

[JAVA] 객체와 객체지향언어 장단점 본문

JAVA

[JAVA] 객체와 객체지향언어 장단점

miniBcake 2024. 6. 21. 20:57

 

객체 지향 프로그래밍

Object Oriented Programming

 

java는 객체지향 프로그래밍 언어이다.

객체지향 프로그래밍 언어로는 java, c#, python 등이 있다.

 

그 외의 방식으로는 절차지향 프로그래밍 언어가 있으며,

대표적인 예로는 C언어가 있다.

 


 

[객체 / 인스턴스]

객체지향 프로그래밍 언어는 실세계를 '객체'라는 단위로 나누어 생각하게 되고,

문제를 '객체' 단위로 처리한다.

따라서 객체지향언어는 설계의 중요성이 높다.

 

객체란, 실제 사물 또는 개념을 의미한다.

인스턴스라고도 이야기하는데, 인스턴스는 클래스를 메모리에 할당시켜 구체화시킨 것이다.

일반적으로는 객체와 인스턴스를 동일하게 봐도 무방하다.

 

객체는 속성과 동작으로 이루어져 있다.

 

속성은 멤버변수, filed, property, attribute 등으로 불리게 되며, 객체의 특징을 나타낸다.

예를 들어 사람이라면 이름, 나이, 성별 등이 속성에 속하게 된다.

 

동작은 함수, method, function, 기능 등으로 불리게 되며, 객체가 할 수 있는 행동을 나타낸다.

예를 들어 사람이라면 걷기, 말하기, 먹기 등이 동작에 속하게 된다.

 

[객체 지향 언어의 단점]

객체가 많아지고 설계가 복잡해지면,

절차지향언어에 비해 용량이 커지고, 속도가 느려질 수 있다.

 

[객체 지향 언어의 장점]

변화 대처에 용이하다. (코드 유지보수에 용이하다.)

다시 말해 코드 재사용성이 높다.