YunDev

[자료구조와 알고리즘] 클래스 본문

자료구조와 알고리즘

[자료구조와 알고리즘] 클래스

S준 2025. 2. 12. 07:54

자바에서 클래스(Class) 는 객체를 생성하기 위한 틀(템플릿)입니다. 클래스는 속성(멤버 변수)과 동작(메서드)을 포함하여 하나의 개체를 정의합니다.

// 클래스 선언
class 클래스이름 {
    // 멤버 변수 (필드)
    데이터타입 변수명;
    
    // 생성자
    클래스이름() {
        // 생성자 코드
    }
    
    // 메서드 (행동)
    반환타입 메서드이름(매개변수) {
        // 실행할 코드
    }
}

 

클래스 예제 코드입니다.

// Person 클래스 정의
class Person {
    // 멤버 변수 (속성)
    String name;
    int age;
    
    // 생성자
    Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 메서드 (행동)
    void introduce() {
        System.out.println("안녕하세요! 저는 " + name + "이고, 나이는 " + age + "살입니다.");
    }
}

// 메인 클래스
public class Main {
    public static void main(String[] args) {
        // Person 객체 생성
        Person person1 = new Person("맑음", 20);
        Person person2 = new Person("지수", 25);

        // 메서드 호출
        person1.introduce();
        person2.introduce();
    }
}

클래스의 주요 개념

  1. 멤버 변수 (필드, 속성)
    • 클래스 내부에서 선언된 변수이며, 객체의 상태를 저장합니다.
    • 예제에서는 name과 age가 멤버 변수입니다.
  2. 생성자(Constructor)
    • 객체가 생성될 때 자동으로 호출되는 메서드입니다.
    • 클래스 이름과 동일한 이름을 가지며, 객체 초기화를 담당합니다.
    • 예제에서는 Person(String name, int age)가 생성자입니다.
  3. 메서드(Method)
    • 객체의 동작(행동)을 정의하는 함수입니다.
    • 객체가 수행할 기능을 정의합니다.
    • 예제에서는 introduce() 메서드가 있습니다.

클래스와 객체(Object)

  • 클래스는 객체를 만들기 위한 설계도입니다.
  • 객체는 클래스를 기반으로 만들어진 실체입니다.
  • new 키워드를 사용하여 클래스를 인스턴스화(객체 생성)할 수 있습니다.
Person person1 = new Person("맑음", 20);

객체를 생성하면 해당 클래스의 속성과 메서드를 사용할 수 있습니다.

정리해보자면

 

  • 클래스: 객체를 만들기 위한 설계도
  • 객체 생성: new 키워드로 인스턴스화
  • 멤버 변수(필드): 객체의 속성 (예: name, age)
  • 생성자(Constructor): 객체 생성 시 호출되어 초기화
  • 메서드(Method): 객체의 동작을 정의