C#은 객체지향 프로그래밍 언어로, 클래스는 데이터 및 기능을 하나로 묶는 데 사용됩니다. 클래스는 객체의 모델이며, 데이터를 저장하고 해당 데이터에 대한 동작을 제공하는 일종의 청사진입니다. 이번 글에서는 C# 클래스의 구조와 사용법에 대해 자세히 알아보겠습니다.
클래스의 정의
클래스는 class
키워드를 사용하여 정의됩니다. 아래는 간단한 Car
클래스의 예시입니다.
class Car
{
// 클래스 멤버 변수
public string model;
public string color;
// 클래스 메서드
public void Start()
{
Console.WriteLine("Engine started");
}
}
위의 예제에서 Car
클래스는 model
, color
두 개의 멤버 변수와 Start
라는 메서드를 가지고 있습니다.
객체 생성과 사용
클래스를 사용하기 위해서는 우선 객체를 생성해야 합니다. 이를 인스턴스화(Instantiation)라고 합니다. 아래는 Car
클래스를 사용하는 예시입니다.
Car myCar = new Car();
myCar.model = "Toyota";
myCar.color = "Blue";
myCar.Start();
위의 예제에서는 Car
클래스의 객체를 생성하고, 객체의 속성에 값을 할당하고, 메서드를 호출하는 것을 보여줍니다.
상속과 다형성
C#에서는 클래스 간의 상속과 다형성을 지원합니다. 상속을 사용하여 기존 클래스의 기능을 재사용하고, 다형성을 통해 여러 클래스를 하나의 타입으로 다룰 수 있습니다.
class ElectricCar : Car
{
// 추가적인 속성 및 메서드 정의
public void Charge()
{
Console.WriteLine("Battery charged");
}
}
위의 예제에서 ElectricCar
클래스는 Car
클래스를 상속받아 Charge
메서드를 추가로 정의하고 있습니다.
접근 제어 지시자
C#에서는 접근 제어 지시자를 통해 멤버 변수 및 메서드의 접근 범위를 지정할 수 있습니다. public
, private
, protected
등이 그 예시입니다.
class Car
{
private string model;
public string color;
// 접근자 메서드를 통한 접근
public string GetModel()
{
return model;
}
}
위의 예제에서 model
변수는 private
으로 선언되어 외부에서 직접 접근할 수 없습니다.
이상으로 C# 클래스의 구조와 사용법에 대해 살펴보았습니다. 객체지향 프로그래밍의 중요한 개념인 클래스를 잘 이해하고 적절히 활용하면 보다 효율적이고 유지보수가 쉬운 코드를 작성할 수 있습니다.