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
'Java' 카테고리의 다른 글
[Spring boot error] STS boot starter 실행 안되는 에러 해결 방법 (failed to transfer form) (0) | 2022.04.19 |
---|---|
JavaFX 사용을 위한 형태 및 정의 (0) | 2021.08.15 |
자바 배열 예시 Java Array (0) | 2021.08.10 |
자바 배열 Java Array (0) | 2021.08.09 |
Java 자바 기본(중의 왕 기본) 개념 [Feat. 변수] (0) | 2021.08.07 |
댓글