#왜 객체지향프로그래밍인가?
객체는 실재하는 대상(Object)를 뜻한다.
프로그래밍에서의 객체는 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미한다.
객체지향프로그래밍이란 프로그램 안에서 각각의 기능과 역할을 가진 객체들이 상호작용을 통해
프로그램의 기능을 수행하는 프로그래밍 방법론을 지칭한다.
객체지향 프로그래밍을 지향할 때,
각각의 속성과 기능을 가진 객체들은 다른 프로그램에서 사용되거나 수정될 수 있어
프로그램 개발 및 유지 보수에 용이하고, 객체를 통한 데이터 관리로 손실 없는 데이터를 얻을 수 있다.
객체를 생성하기 위해 자바에서는 클래스, 클래스가 만들어지는 필드와 메서드, 생성자를 사용한다.
#클래스와 객체
▪클래스
:객체를 정의한 '설계도' 또는 '틀'과 같다.
그래서 클래스는 객체를 생성하는 데 사용되고, 객체는 클래스의 정의와 설계된 내용대로 생성된다.
▪인스턴스
:클래스를 통해 생성된 객체 의미. 객체를 만드는 과정을 인스턴스화라고 부른다.
▪클래스의 기본 요소
public class Main {
String blog = "pilgrim"; // // (1) 필드
void printf() {...} // (2)메서드 -> void는 return을 필요로 하지 않는 리턴자료형.
Main {...} // (3)생성자 -> 메서드명이 클래스명과 동일, 리턴자료형 정의X
class Main2 {...} // (4)이너클래스
}
(1) 필드
: 클래스의 속성을 나타내는 변수
(2) 메서드
: 클래스의 기능을 나타내는 함수
(3) 생성자
: 클래스의 객체를 생성하는 역할
(4) 이너 클래스
: 클래스 내부의 클래스를 의미
*클래스의 멤버 = 필드 + 메서드 + 이너클래스
필드와 메서드는 클래스의 속성과 기능에 관한 정보를 담고 있다.
▪객체
: 클래스(설계도)를 통해 만들어진 데이터 혹은 식별자에 의해 참조되는 공간.
속성과 기능. 두 가지 요소의 집합으로 이루어져 있다.
한 객체는 여러 기능과 속성을 가질 수 있다.
(1) 속성
: 객체가 가지는 변수.
(2) 기능
: 객체가 가지는 메서드.
▪객체의 생생과 활용
-객체의 생성
클래스명 참조_변수명; // 인스턴스를 참조하기 위한 참조변수 선언
참조_변수명 = new 생성자(); // 인스턴스 생성 후, 객체의 주소를 참조 변수에 저장
// 통합하여 다음과 같이 선언 가능하다.
클래스명 참조_변수명 = new 생성자();
new 생성자를 통해 객체를 생성하고 힙 메모리에 넣은 주소값을 참조변수에 저장한다.
생성한 객체는 참조변수명 뒤 포인트연산자(.)를 통해 사용할 수 있다.
▪객체 기본 문법
참조 변수명.필드명 // 필드값 불러오기
참조 변수명.메서드명() // 메서드 호출
다음과 같이 필드명을 불러올 수도, 메서드를 호출할 수도 있다.
//추후 스택메모리와 힙 메모리에 대해 정리해야겠다.
'개발지 > Today I learn' 카테고리의 다른 글
[0719] 자바 객체지향프로그래밍 2 (생성자, 내부클래스) (0) | 2023.07.20 |
---|---|
[0718] 자바 객체지향프로그래밍 2 (필드와 메서드) (0) | 2023.07.19 |
[0711] 자바 기초 10 (배열) (0) | 2023.07.14 |
[0710] 자바 기초 9 (콘솔 입/출력, 제어문) (0) | 2023.07.14 |
[0710] 자바 기초 8 (연산자) (0) | 2023.07.12 |