Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 클래스란 무엇인가? 개념과 정의 방법 완벽 정리

C# 클래스란 무엇인가?

C#에서 클래스(class)란 하나의 데이터 타입을 만들기 위한 설계도(blueprint)입니다. 이 설계도를 바탕으로 실제로 생성된 것을 객체(object)라고 하며, 객체는 곧 클래스의 인스턴스(instance)입니다. 또한 클래스를 구성하는 메서드와 변수들은 통틀어 클래스의 멤버(member)라고 부릅니다.

클래스 정의의 일반적인 형태

클래스 정의는 class 키워드로 시작하여 그 뒤에 클래스 이름이 붙고, 중괄호 { }로 묶인 클래스 본문(body)으로 구성됩니다. 클래스 정의의 일반적인 형식은 다음과 같습니다.

<접근 지정자> class 클래스_이름 {

    // 멤버 변수
    <접근 지정자> <데이터 타입> 변수1;
    <접근 지정자> <데이터 타입> 변수2;
    ...
    <접근 지정자> <데이터 타입> 변수N;

    // 멤버 메서드
    <접근 지정자> <반환 타입> 메서드1(매개변수_목록) {
        // 메서드 본문
    }

    <접근 지정자> <반환 타입> 메서드2(매개변수_목록) {
        // 메서드 본문
    }
    ...
    <접근 지정자> <반환 타입> 메서드N(매개변수_목록) {
        // 메서드 본문
    }
}

클래스의 핵심 포인트

  • 접근 지정자(Access Specifier): 멤버뿐 아니라 클래스 자체에 대한 접근 규칙을 결정합니다. 접근 지정자를 명시하지 않으면 클래스 타입의 기본 접근 수준은 internal이 되고, 멤버의 기본 접근 수준은 private입니다.

  • 데이터 타입과 반환 타입: 데이터 타입은 변수의 자료형을 지정하며, 반환 타입(return type)은 메서드가 돌려주는 데이터의 자료형을 나타냅니다. 반환값이 없는 경우에는 void를 사용합니다.

  • 점(.) 연산자: 클래스 멤버에 접근할 때는 점(.) 연산자를 사용합니다. 점 연산자는 객체의 이름과 멤버의 이름을 연결해 주는 역할을 합니다.

점 연산자 활용 예시

실제 코드에서는 아래와 같이 객체를 생성한 뒤 점 연산자를 통해 멤버 변수에 값을 저장하거나 멤버 메서드를 호출할 수 있습니다.

Box box1 = new Box();   // 객체(인스턴스) 생성
box1.length = 10.0;     // 점(.) 연산자로 멤버 변수 접근
box1.getVolume();       // 점(.) 연산자로 멤버 메서드 호출

이처럼 클래스는 관련된 데이터와 동작을 하나로 묶어 관리할 수 있게 해주는 C# 객체지향 프로그래밍(OOP)의 핵심 요소입니다. 클래스 개념을 확실히 익혀두면 이후 배우게 될 상속, 캡슐화, 다형성 등 고급 개념을 이해하는 데 큰 도움이 됩니다.