728x90
반응형

오버로딩 (Overloading)과 오버라이딩 (Overriding)은 객체 지향 프로그래밍에서 메소드를 다룰 때 사용되는 개념입니다. 

 

1.오버로딩 (Overloading): 메소드 오버로딩은 한 클래스 내에서 같은 이름의 메소드를 여러 개 정의하는 것입니다. 
이 메소드들은 매개변수의 수, 타입 또는 순서가 다르기 때문에 서로 다른 기능을 수행할 수 있습니다. 
또한 컴파일러가 호출되는 매개변수를 기준으로 적절한 메소드를 선택합니다. 
메소드 오버로딩을 사용하면 코드를 간결하게 유지하면서 동일한 기능을 하는 메소드들을 하나의 이름으로 그룹화할 수 있습니다.

public class Calculation
{
    public int Add(int a, int b)
    {
        return a + b;
    }

    public double Add(double a, double b)
    {
        return a + b;
    }
}



2. 오버라이딩 (Overriding): 메소드 오버라이딩은 기반 클래스(base class)에 있는 메소드를 파생 클래스(derived class)에서 재정의하여 사용하는 것입니다. 
이를 통해 파생 클래스는 부모 클래스의 메소드를 같은 이름과 시그니처로 사용할 수 있지만, 다른 동작을 수행하도록 구현할 수 있습니다. 
오버라이딩을 사용하면 기반 클래스의 기본 기능을 변경하거나 확장해서, 더 구체적이고 맞춤화된 동작을 제공할 수 있습니다.

public class Animal
{
    public virtual void Speak()
    {
        Console.WriteLine("알 수 없음");
    }
}

public class Dog : Animal
{
    public override void Speak()
    {
        Console.WriteLine("멍멍");
    }
}

 

 

 

 

728x90
반응형

'입사후 공부한 내용' 카테고리의 다른 글

[C#] 기본 개념  (0) 2023.06.23
[React] 노마드코더 기초  (0) 2023.06.21
[MSSQL] 연결 에러 해결!  (0) 2023.06.16
[ASP.NET] MVC강의 기초 및 심화  (0) 2023.06.13
[ASP.NET] 개념과 역사  (0) 2023.06.13

+ Recent posts