본문 바로가기
Java

자바 객체와 객체 지향 프로그래밍

by Jann 2022. 6. 15.
728x90

자바에서 객체와 객체 지향 프로그래밍

 

자바 객체지향

자바 기반으로 프로그래밍 하는 1인으로,

몇 번을 강조해도 지나치지 않을만큼 중요한 객체와 객체지향의 개념!

 

기초 중에 기초라, 늘 안다고 그냥 넘어갔기에 이번에 한 번 제대로

객체 지향의 개념과 객체, 메소드, 클래스 등의 개념을 정리해보자.

 


 

객체와 객체 지향 프로그래밍

객체 Object

: 의사(의도), 행위(행동)가 미치는 대상으로 구체적, 추상적 데이터의 단위

 

객체 지향 프로그래밍 OOP

: 시간에 따라 프로그래밍하는 절차 지향 프로그래밍(C언어)과 비교해,

객체의 기능을 정의하고 각 객체 간의 협력을 구현하는 말 그대로 객체중심의 프로그래밍이 객체 지향 프로그래밍

→ 객체의 속성은 클래스 멤버 변수로, 객체의 역할(기능)은 메서드로 구현

 

메서드 Method

: 객체의 기능을 구현하기 위해 클래스 내부에 구현되는 함수로 메서드를 구현함으로써 객체 기능이 구현 된다.

 

멤버 변수 Member Variable

: 클래스의 속성 또는 특성을 나타낸다.

 

예시 클래스 <주문> 

 

public class Order {

	// Field, 멤버 변수
	int orderId;
	String buyerId;
	String sellerId;
	int productId;
	String orderDate;
    
	// Method, 메서드
	int add(int num1, int num2) {
		
		int result;
		result = num1 + num2;
		return result;
	}
}

 

인스턴스와 스택(stack) , 힙 메모리 (heap memory)

 

스택 메모리

: 함수가 호출될 때 지역 변수들이 사용하는 메모리로 함수의 수행이 끝나면 자동으로 반환 되는 메모리

 

인스턴스 Instance

: new 키워드를 사용하여 인스턴스를 생성,  클래스 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가지고, 동적 메모리(heap memory) 에 할당된다.

- > 예를 들어, 학생 클래스에서 생성된 각각의 인스턴스는 각각 다른 이름, 학번, 등의 값을 가진다.

 

힙 메모리

: 생성된 인스턴스가 할당되는 동적 메모리 영역으로, 하나의 클래스로부터 여러개의 인스턴스가 생성되면 각각 다른 메모리 주소를 가지게 된다.

728x90

댓글