[C#]泛型(Generics)

 

泛型的意思是「暫時替代型別的置換符號」,讓程式設計師暫時不需要決定型別,就可以完成類別或方法的設計。比如成績的這個類別,有可能是等第ABC,也有可能是分數,在宣告成績這個類別時給他一個符號T,不直接給定這是string還是int的資料型別。

 

簡單的程式範例如下:

public class Grade<T>

    {      

        private T  grade;

        public T  getGrade()

        {

            return grade;

        }

 

        public void setGrade(T data)

        {

            grade = data;

        }

    }

    class Program

    {

        static void Main(string[] args)

        {

            Grade<string> grade = new Grade<string>();

            grade.setGrade("A");

 

            Grade<int> score = new Grade<int>();

            score.setGrade(95);

 

            Console.WriteLine(grade.getGrade());

            Console.WriteLine(score.getGrade());

        }

    }

 

在上面的程式範例中Grade<T>這個類別我們一開始不明確定義資料型別,後面在做實例化時才明確定義這是string的資料型態,這是int的資料型態,這就是泛型的最基本概念。使用泛型有它的好處,更多有關泛型的觀念我之後會再跟大家介紹。

 

arrow
arrow
    全站熱搜

    波羅、希夏普2020 發表在 痞客邦 留言(0) 人氣()