티스토리 뷰

C#/수업 내용

메서드 오버로드,일반화

Game Client Lee Hwanguk 2023. 1. 10. 22:59
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Study11
{
    internal class App
    {
        public App()
        {
            //일반화 메서드

            int[] arr0 = { 1, 2, 3 }; //배열 생성
            int[] arr1 = new int[3];    //{0, 0, 0}
            CopyArray(arr0, arr1); //배열을 매게변수로 사용

            string[] arr2 = { "홍길동", "임꺽정", "장길산" }; 
            string[] arr3 = new string[3];
            CopyArray(arr2, arr3);

            Hero[] arr4 = { new Hero(), new Hero(), new Hero() }; //인스턴스를 인덱스로 사용
            Hero[] arr5 = new Hero[3]; 
            CopyArray(arr4, arr5);

            CopyArray<int>(arr0, arr1); //<type> 
            CopyArray<string>(arr2, arr3); 
            CopyArray<Hero>(arr4, arr5);
        }

        void CopyArray<T>(T[] a, T[] b) //<T> 일반화 메서드 생성 , <T> 해당 타입으로 정의된다. 익숙해지면 정말 편하겠다
        {
            for (int i = 0; i < a.Length; i++)
            {
                b[i] = a[i];
            }
        }

        //Method OverLoading
        void CopyArray(Hero[] a, Hero[] b) //메서드 오버로드 =>같은 메서드에 다른 매개변수를 사용한다
        {
            for (int i = 0; i < a.Length; i++)
            {
                b[i] = a[i];
            }
        }

        //Method OverLoading
        void CopyArray(string[] a, string[] b) //메서드 오버로드 =>같은 메서드에 다른 매개변수를 사용한다
        {
            for (int i = 0; i < a.Length; i++)
            {
                b[i] = a[i];
            }
        }

        void CopyArray(int[] a, int[] b) //메서드 오버로드 =>같은 메서드에 다른 매개변수를 사용한다
        {
            for (int i = 0; i < a.Length; i++)
            {
                b[i] = a[i];
            }
        }

    }
}

'C# > 수업 내용' 카테고리의 다른 글

대리자  (0) 2023.01.11
char형식  (0) 2023.01.11
23.01.10  (0) 2023.01.10
메서드 재정의(상속 - virtual,base,override)  (0) 2023.01.10
Dictionary  (0) 2023.01.10
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함