第136回 ジェネリックについて
公開日:2015-04-26 更新日:2019-05-11
1. 概要
独り言によるプログラミング講座、「第136回 ジェネリックについて」です。
ジェネリックと聞くと、ジェネリック医薬品を思い浮かべますが、あまり考えない方が良いです。
クラスで保持する変数の型や、メソッドの引数の型を、使用者側から指定できるようにしたのがジェネリックです。
ジェネリックと聞くと、ジェネリック医薬品を思い浮かべますが、あまり考えない方が良いです。
クラスで保持する変数の型や、メソッドの引数の型を、使用者側から指定できるようにしたのがジェネリックです。
2. 動画
3. 動画中に書いたソース
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;
}
}