タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

JavaとC#に関するairj12のブックマーク (2)

  • ジェネリック

    (IL/バイト コードの)ポロリもあるよ! 日はジェネリックに関する説明です。 ジェネリックとは ジェネリック(英語だとgenericsです。訳すなら「総称」)は、型をパラメーター化する仕組みです。 操作対象となる引数やメンバーの型だけ差し替えて、全く同じ操作をしたい場合あがります。わかりやすい例は、コレクションでしょう。要素の型だけが違って、同じ操作(要素の追加、更新、参照、削除)を行いたいです。 var list = new List<int>(); list.Add(1); var x = list[0]; Console.WriteLine(x); //↑↓ 要素の型だけが違う var sList = new List<string>(); sList.Add(“abc”); var s = sList[0]; Console.WriteLine(s); この場合、Listクラス

    ジェネリック
    airj12
    airj12 2011/12/08
    ここまで気にしてなかったな / 仮想マシンレベルでジェネリックに対応している事の意義(Javaとの違い)
  • C# と Java の例外に対する考え方の違い - とある社員のチラシ裏

    http://msdn.microsoft.com/en-us/vcsharp/aa336812.aspx を勝手に翻訳 なぜ、C#では例外定義を持たないのか いくつかの言語では、例外定義をメンバの宣言に含めることができたり、要求されます。 例えば、ある言語の作りでは、メソッドが発生させる ArgumentException は次のように宣言されます。 void DoSomething(int a) throws ArgumentException {...} C# はそのような例外定義はできないし、要求もされません。 いくつかの理由で例外定義を削除しました。その理由は バージョニング 生産性とコードの品質 クラス作成者に「チェックされた例外」と「未チェックの例外」違いを強いることの非現実性 インタフェースに対して、正しく例外を規定することの困難さ バージョニング C#が例外定義を要求した

    C# と Java の例外に対する考え方の違い - とある社員のチラシ裏
    airj12
    airj12 2011/10/27
    改めて読んで納得した。
  • 1