Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags more
Archives
Today
Total
관리 메뉴

luke

[자바/Java] - 클래스(Class) 본문

Study/Java

[자바/Java] - 클래스(Class)

luke-king 2024. 1. 6. 14:26

클래스(Class)

클래스 - Class

클래스는 객체를 생성하기 위한 '틀' 또는 '설계도' 이다.

클래스는 객체가 가져야 할 속성(변수)과 기능(메서드)를 정의한다.

 

객체 - Object

객체는 클래스에서 정의한 속성과 기능을 가진 실체이다.

객체는 서로 독립적인상태를 가진다.

 

인스턴스 - Instance

인스턴스는 특정 클래스로부터 생성된 객체를 의미한다. 그래서 객체와 인스턴스라는 용어는 자주 혼용된다.

인스턴스는 주로 객체가 어떤 클래스에 속해 있는지 강조할 때 사용한다.

 

 

위 내용을 이해하기 쉽게 말하자면 한번 쯤  '붕어빵 틀', '붕어빵' 을 들어봤을 것이다.

Class'붕어빵틀' 역할을 하며 우리가 만든 '붕어빵'객체(Object), 인스턴스(Instance)라 한다.

 

또 붕어빵 이야기를 많이 들었지만 어렵다면 필자가 들었던 자동차 이야기를 해보겠다.

자동차를 만들기 위해 우선 설계도가 필요할 것이다. Class가 설계도 이며 설계도를 받았다면 자동차를 만들기 위해 설계도를 통해 부품을 가지고 자동차를 만드는 것이 객체(Object), 인스턴스(Instance) 이다.

 

<Kia 라는 Class(틀) 생성>

public class Kia{
	String carName;
	int door;
	int wheel;
	int light;
}

클래스에 정의한 변수들을 멤버 변수, 또는 필드라 한다.

- 멤버 변수 : 특정 클래스에 소속된 멤버이기 때문에 이렇게 부른다.

 

<Kia 자동차를 만드는 Main Class>

public class Seltos{
	public static void main(String[] args){
    	Kia kia1 = new Kia(); //객체 생성 (자동차 만들기 위해 '틀' 사용)
        kia1.carName = "셀토스";
        kia1.door = 4;
        kia1.wheel = 4;
        
        System.out.println("차 이름: " + kia1.carName +
        		", 문 개수: " + kia1.door + 
                         ", 바퀴 개수: " + kia1.wheel)
    
    }
}

만들었던 Class를 사용하기 위해 " Kia kia1 = new Kia(); " 객체( 인스턴스 ) 생성을 해준다.

- new Kia(); : new는 새로 생성한다는 뜻이며 new Kia()Kia 클래스 정보를 기반으로 새로운 객체를 생성하라는 뜻이다.

이렇게 하면 메모리에 실제 Kia 객체(인스턴스)를 생성한다.

- 객체를 생성하면 자바는 메모리에 이 객체에 접근할 수 있는 참조값(주소)를 반환한다.

 

 

<실행 결과>

차 이름: 셀토스, 문 개수: 4, 바퀴 개수: 4

 

 

※ 출처: Inflearn 김영한-Java 강의 중