JAVA

JAVA

싸블양 2025. 3. 20. 17:39

 자바(JAVA)는 OOP(Object Orineted Programming) 순수 객체지향 언어에 가까워 '객체지향 프로그래밍 언어' 라고 부릅니다.

그렇다면 객체를 지향하는 프로그래밍이란 무엇일까요?

 

 우리 주변의 세상은 사람, 자동차, 건물, 나무, 신발, 양배추와 같은 객체로 구성되어 있습니다.
이러한 각 객체(Object)는 특정한 동작을 수행할 수 있으며, 각 동작은 세계의 다른 객체들에 영향을 미칠 수 있습니다.

객체 지향 프로그래밍은 프로그램을 객체로 구성되어 있는 것으로 간주하며, 이러한 객체들은 각자 독자적으로 행동하거나 서로 상호 작용할 수 있는 방법으로 프로그래밍 방법론입니다.

 

 프로그램 내의 객체, 즉 소프트웨어 객체는 실제 세계의 객체를 나타낼 수도 있고 추상화 될 수도 있습니다. 예를 들어, 교통 흐름을 분석하기 위해 고속도로 교차로를 시뮬레이션하는 프로그램을 고려해 보겠습니다. 이 프로그램은 교차로에 진입하는 각 자동차를 나타내는 객체를 가지고 있을 수 있으며, 또한 고속도로의 각 차선, 신호등 등을 시뮬레이션하기 위한 다른 객체를 가질 수 있습니다. 이러한 객체들 간의 상호 작용은 교차로의 설계에 대한 결론으로 이어질 수 있습니다.

 

 객체지향 프로그래밍에는 고유한 용어가 있습니다. 객체는 특성 또는 속성(Attribute)을 가지고 있습니다. 예를 들어, 자동차 객체는 이름, 현재 속도 및 연료 수준과 같은 특성을 가질 수 있습니다. 객체의 특성 값은 객체에 상태를 부여합니다. 객체가 수행할 수 있는 동작은 동작이라고 합니다. 이전에 보았듯이 각 동작은 메소드(Method)라고 불리는 자바 코드 조각에 의해 정의됩니다.

 

 같은 종류의 객체는 동일한 데이터 유형을 가지며 동일한 클래스에 속합니다. 클래스는 객체의 종류를 정의하며, 객체를 생성하기 위한 청사진입니다. 객체(Object)의 데이터 유형은 해당 클래스의 이름입니다. 예를 들어, 고속도로 시뮬레이션 프로그램에서 모든 시뮬레이션된 자동차는 동일한 클래스에 속할 수 있으며, 이 클래스는 아마도 Automobile이라고 불릴 것입니다. 따라서 이들의 데이터 유형은 Automobile입니다.

 

 클래스의 모든 객체는 동일한 특성과 동작을 가지고 있습니다. 따라서 시뮬레이션 프로그램에서 모든 자동차는 전진 및 후진과 같은 동작을 가지고 있습니다. 이는 모든 시뮬레이션된 자동차가 동일하다는 것을 의미하지 않습니다. 모든 자동차는 동일한 특성을 가지고 있지만 다른 상태를 가질 수 있습니다. 즉, 특정 특성은 자동차들 사이에서 다른 값들을 가질 수 있습니다. 따라서 서로 다른 제조사를 가지고 서로 다른 속도로 이동하는 세 개의 자동차를 가질 수 있습니다. 이 모든 것은 자바 클래스를 작성할 때 더 명확해질 것입니다.

'JAVA' 카테고리의 다른 글

new를 언제? 왜 붙여야하는가? (3)  (0) 2025.06.19
new를 언제? 왜 붙여야하는가? (2)  (0) 2025.06.18
new를 언제? 왜 붙여야하는가? (1)  (1) 2025.06.14
Java 메서드 구조 분석  (0) 2025.06.14
클래스와 오브젝트  (0) 2025.06.13