본문 바로가기

development/Java

클래스(Class)와 객체(Object)

학습 목표 

1. 클래스의 구성 요소와 기본 문법을 설명할 수 있다.

2. 객체란 무엇인지 설명 할 수 있다.

3. 객체의 요소 - 속성과 기능이 무엇인지 이해할 수 있다.

4. new 키워드를 통해 객체를 생성하고, 이를 활용할 수 있다.

5. 클래스와 객체의 차이에 대해 설명하고, 둘의 관계를 정의할 수 있다.


클래스

정의

class 클래스명 { // 클래스 정의
		// 내용 생략
}

객체를 정의한 설계도. class키워드를 사용해서 정의한다

 

구성 요소

public class ExampleClass {
	int i = 10; 			// 필드
	void exampleMethod() {...} 	// 메서드
	ExampleClass {...} 		// 생성자
	class ExampleClass2 {...} 	// 이너 클래스
}

클래스는 필드, 메서드, 생성자, 그리고 이너 클래스로 구성되어 있다.

 

  • 필드 : 클래스의 속성을 나타내는 변수
  • 메서드: 클래스의 기능을 나타내는 함수
  • 생성자: 클래스의 객체를 생성하는 역할
  • 이너 클래스: 클래스 내부의 클래스

생성자를 제외한 3가지(필드,메서드, 이너클래스)를 멤버라고 부른다. 


객체

정의

1.  제임스 고슬링의 정의:  클래스의 인스턴스나 배열

2. 컴퓨터 공학에서의 정의: 변수, 자료구조, 함수, 메서드 등등..etc

3. 객체지향 프로그래밍에서의 정의 : 클래스를 기반으로 한 필드와 메서드 

 

객체는 크게 속성기능이라는 두 가지 구성요소로 이루어져 있으며

이는 각각 필드메서드로 정의된다

 

객체 생성 방법

클래스명 참조변수명;		//인스턴스를 참조하기 위한 변수 선언
참조변수명 = new 생성자();	//new로 인스턴스 생성,  객체 주소를 참조변수에 저장

new키워드는 생성자를 통해 생성된 객체를 힙 메모리에 넣는다

객체는 힙 메모리 영역에 저장되고 클래스는 클래스 영역에,  참조변수는 스택 영역에 저장된다

 

'development > Java' 카테고리의 다른 글

필드(Field)와 메서드(Method)  (0) 2023.01.14
23.01.04 열거형 enum  (1) 2023.01.05