Java
자바 객체와 객체 지향 프로그래밍
Jann
2022. 6. 15. 21:03
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