C#교과서 마스터하기 33. 메서드 오버라이드

min seung moon·2021년 7월 14일
0

C#

목록 보기
34/54
post-thumbnail

https://www.youtube.com/watch?v=UubMVC3EmyQ&list=PLO56HZSjrPTB4NxAsEP8HRk6YKBDLbp7m&index=67

1. 메서드 오버라이드

01. 오버라이드

  • 재정의, 다시 정의, Override, Overriding
    • 부모 클래스의 메서드를 자식 클래스에서 재정의
    • 가상 메서드
    • virtualoverride

02. 오버로드

  • 다중 정의, 여러 번 정의, Overload, Overloading
    • 하나의 클래스에 시그니처가 다른 동일 이름의 메서드 여러 번 정의
    • 함수 중복
    • 반환 타입, 파라메터 수, 파라메터 타입 등 ...

2. 프로젝트

  • override는 접근제어자도 동일해야 된다
using System;
using static System.Console;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

namespace testProject
{
    class Parent
    {
        protected void Say() => WriteLine("부모_안녕하세요");
        protected void Rum() => WriteLine("부모_달리다");
        public virtual void Walk() => WriteLine("부모_걷다");
        public virtual void Work() => WriteLine("부모_프로그래머");
        
    }

    class Child : Parent
    {
        public void Say() => WriteLine("자식_안녕하세요");
        public new void Rum() => WriteLine("자식_달리다");
        public override void Walk() => base.Walk();
        public override void Work() => Write("자식_프로게이머");
    }

    class Program
    {
        static void Main(string[] args)
        {
            Child child = new Child();
            child.Say();
            child.Rum();
            child.Walk();
            child.Work();
        }
    }
}


profile
아직까지는 코린이!

0개의 댓글