[c#] C#의 객체지향 프로그래밍
C#은 Microsoft사에서 개발한 객체지향 프로그래밍 언어로, 객체, 클래스, 상속, 다형성 등의 개념을 활용하여 프로그램을 작성합니다.
객체지향 프로그래밍이란
객체지향 프로그래밍(OOP)은 프로그램을 객체의 모음으로 간주하고, 이러한 객체들 간의 상호작용으로 프로그램을 구현하는 프로그래밍 패러다임입니다. C#은 이러한 OOP의 특징들을 내재적으로 지원하여 소프트웨어 개발을 보다 편리하게 만들어줍니다.
클래스와 객체
객체지향 프로그래밍에서 클래스는 객체를 생성하기 위한 템플릿이며, 객체는 이러한 템플릿에 의해 생성된 인스턴스를 말합니다. C#에서는 class
키워드를 사용하여 클래스를 정의하고, new
키워드를 사용하여 객체를 생성합니다.
public class Car
{
public string model;
public string color;
public void Start()
{
// Car starting logic
}
}
class Program
{
static void Main()
{
Car myCar = new Car(); // 객체 생성
myCar.model = "Tesla";
myCar.color = "Red";
myCar.Start(); // 객체의 메서드 호출
}
}
상속
C#에서는 상속이라는 기능을 통해 이미 존재하는 클래스의 속성과 기능을 다른 클래스에서도 재사용할 수 있습니다. 이를 통해 코드의 중복을 최소화하고 유지보수성을 높일 수 있습니다.
public class ElectricCar : Car
{
public int batteryCapacity;
public void Charge()
{
// Charging logic
}
}
다형성
C#은 다형성(polymorphism)을 지원하여 한 가지 인터페이스나 부모 클래스를 통해 여러 가지 형태의 파생 클래스를 사용할 수 있습니다.
Car myCar = new Car();
Car myElectricCar = new ElectricCar();
C#의 객체지향 프로그래밍은 유연하며 강력한 기능을 갖춘 언어로, 복잡한 애플리케이션의 개발을 효율적이고 유연하게 할 수 있습니다.
참고문헌:
- https://docs.microsoft.com/en-us/dotnet/csharp/
- https://www.tutorialspoint.com/csharp/csharp_object_oriented.htm