- プログラミング講座 -
第136回 ジェネリックについて
作成日:2015-04-26
1. 概要
独り言によるプログラミング講座、「第136回 ジェネリックについて」です。
ジェネリックと聞くと、ジェネリック医薬品を思い浮かべますが、あまり考えない方が良いです。
クラスで保持する変数の型や、メソッドの引数の型を、使用者側から指定できるようにしたのがジェネリックです。
ジェネリックと聞くと、ジェネリック医薬品を思い浮かべますが、あまり考えない方が良いです。
クラスで保持する変数の型や、メソッドの引数の型を、使用者側から指定できるようにしたのがジェネリックです。
2. 動画
3. 動画中に書いたソース
Form1.cs
using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //★独り言によるプログラミング講座 //■ジェネリックについて // 型の指定 /* var list = new List<string>(); list.Add("abc"); list.Add("123"); //list.Add(999); //エラー MessageBox.Show(list[0]); MessageBox.Show(list[1]); */ /* ArrayList list = new ArrayList(); list.Add("abc"); list.Add("123"); list.Add(999); MessageBox.Show(list[0].ToString()); MessageBox.Show(list[1].ToString()); MessageBox.Show(list[2].ToString()); */ /* //お醤油のビン ArrayList list = new ArrayList(); list.Add("お醤油"); list.Add("ソース"); var list = new List<お醤油>(); list.Add(お醤油); //list.Add(ソース); //エラー */ /* DataInt data = new DataInt(); data.value = 123; DataString data2 = new DataString(); data2.value = "abc"; */ var dataInt = new Data<int>(); dataInt.value = 1; var dataStr = new Data<string>(); dataStr.value = "abc"; MessageBox.Show(dataInt.value.ToString()); MessageBox.Show(dataStr.value.ToString()); this.Dispose(); } } class Data<T> { public T value; } class DataInt { public int value = 0; } class DataString { public string value = ""; } class DataFloat { public float value = 0; } }