GENERICS
GENERICSとは、Java 2 Platform Standard Edition 5.0から導入されたJAVAの言語仕様のことである。
C++言語のテンプレートに相当するもので、実行側コードからクラスの因数の型を指定することが可能となっている。また、クラスファイルやVMの仕様に変更が加えられており、従来のJAVAにはなかった多くの機能が追加されている。
ジェネリックプログラミング
(ジェネリクス から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/02 08:30 UTC 版)
ジェネリック(総称あるいは汎用)プログラミング(英: generic programming)は、具体的なデータ型に直接依存しない、抽象的かつ汎用的なコード記述を可能にするコンピュータプログラミング手法である。
- ^ Stanley B. Lippman. “Pure C++:Generic Programming Under .NET”. マイクロソフト・MSDNマガジン. 2008年12月28日閲覧。[リンク切れ]
- ^ 統一モデリング言語 (UML) の用語では、それぞれ汎化 (generalization) および特化 (specialization) と呼ぶ。
- ^ Verilog by Example, Section The Rest for Reference. Blaine C. Readler, Full Arc Press, 2011. ISBN 978-0-9834973-0-1
ジェネリクス
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/03 23:38 UTC 版)
ジェネリクスが導入された。これは.NET Framework 2.0の機能である。クラス、構造体、インターフェイス、デリゲート、メソッドに対して適用することができる。.NETのGenericsはC++のテンプレート、あるいはJavaにおけるそれとも異なるもので、コンパイルによってではなく実行時にランタイムによって特殊化される。これによって異なる言語間の運用を可能にし、リフレクションによって型パラメーターに関する情報を取得することができる。また、where節によって型パラメーターに制約を与えることができる。一方、C++のように型パラメーターとして式を指定することはできない。なお、ジェネリックメソッドの呼び出し時に引数によって型パラメーターが推論できる場合、型パラメーターの指定は省略できる。
※この「ジェネリクス」の解説は、「C Sharp」の解説の一部です。
「ジェネリクス」を含む「C Sharp」の記事については、「C Sharp」の概要を参照ください。
ジェネリクス
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/17 21:54 UTC 版)
「C SharpとJavaの比較」の記事における「ジェネリクス」の解説
Javaではジェネリクスは型消去 (type erasure) によって実装されている。これによってジェネリック型についての情報は実行時には失われ、リフレクションを通してのみ取得できるようになる。.NET 2.0では、ジェネリック型についての情報は完全に保存される。Javaはプリミティブ型に対するジェネリック型は定義できないが、C#では参照型・値型(プリミティブ型を含む)いずれに対してもジェネリック型を定義できる。Javaはその代わりにボックス化した型を使用することができる(List
※この「ジェネリクス」の解説は、「C SharpとJavaの比較」の解説の一部です。
「ジェネリクス」を含む「C SharpとJavaの比較」の記事については、「C SharpとJavaの比較」の概要を参照ください。
ジェネリクス
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/02 08:54 UTC 版)
「C Sharpのデータ型」の記事における「ジェネリクス」の解説
C#はジェネリックプログラミングに対応する。 クラス、構造体、インターフェイス、デリゲート、メソッドに対して、型引数を適用することができる。 型引数はout/inパラメータと共に指定することで、共変性、反変性を持つ。 ///
※この「ジェネリクス」の解説は、「C Sharpのデータ型」の解説の一部です。
「ジェネリクス」を含む「C Sharpのデータ型」の記事については、「C Sharpのデータ型」の概要を参照ください。
- ジェネリクスのページへのリンク