.NET Framework クラス ライブラリの概要

**.NET Framework には、開発プロセスを迅速化および最適化し、システムの諸機能へのアクセスを提供する、クラス、インターフェイス、および値型が用意されています。言語間での相互運用性を確保するため、.**NET Framework の型は、共通言語仕様 (CLS: Common Language Specification) に準拠しています。このため、コンパイラが CLS に準拠しているすべてのプログラミング言語で使用できます。

**.NET Framework の型は、.NET アプリケーション、.**NET コンポーネント、および **.NET コントロールを構築するときの基礎となります。.**NET Framework には、次の機能を実行する型が用意されています。

  • 基本データ型と例外を表す。

  • データ構造をカプセル化する。

  • 入出力を実行する。

  • 読み込まれた型についての情報にアクセスする。

  • **.**NET Framework セキュリティ チェックを呼び出す。

  • データ アクセス、豊富なクライアント側 GUI、およびサーバー制御式のクライアント側 GUI を提供する。

**.**NET Framework には、豊富なインターフェイス セットに加えて、抽象クラスと具象 (抽象ではない) クラスが用意されています。具象クラスはそのまま使用できますが、多くの場合は、具象クラスから独自のクラスを派生させます。インターフェイスの機能を使用するには、インターフェイスを実装するクラスを作成するか、またはインターフェイスを実装する **.**NET Framework クラスの 1 つからクラスを派生させます。

名前付け規則

**.**NET Framework の型では、階層構造を伴うドット構文の名前付け方法が使われます。この方法では、関連する型が名前空間にグループ化されるため、検索と参照を簡単に行うことができます。フルネームのうち右端のドットまでの最初の部分は、名前空間の名前です。名前の最後の部分は型名です。たとえば、System.Collections.ArrayListArrayList 型であり、名前空間 System.Collections に属します。System.Collections 内の型を使用することで、オブジェクトのコレクションを操作できます。

この名前付け方法によって、**.**NET Framework を拡張するライブラリ開発者は、型の階層構造のグループを簡単に作成し、一貫性のあるわかりやすい名前を付けることができます。ライブラリ開発者は、次のガイドラインに従って名前空間の名前を付けてください。

CompanyName.TechnologyName

たとえば、名前空間 Microsoft.Word はこのガイドラインに従っています。

名前付けパターンを使用して関連する型を名前空間にグループ化する方法は、クラス ライブラリを構築および文書化するのに便利です。ただし、この名前付け方法は、参照可能範囲、メンバ アクセス、継承、セキュリティ、バインディングには影響しません。名前空間は複数のアセンブリにまたがって分割でき、また 1 つのアセンブリに複数の名前空間からの型を含めることができます。アセンブリは、共通言語ランタイムにおけるバージョン管理、配置、セキュリティ、読み込み、および参照可能範囲のための構造を提供します。

名前空間と型の名前の詳細については、「共通型システム」を参照してください。

名前空間 System

名前空間 System は、**.NET Framework における基本的な型のルート名前空間です。この名前空間には、Object (継承階層構造のルート)、ByteCharArrayInt32String など、すべてのアプリケーションで使用される基本データ型を表すクラスが含まれます。これらの型の多くは、プログラミング言語で使われるプリミティブなデータ型に対応します。.NET Framework の型を使用してコードを記述するときには、.**NET Framework の基本データ型が使用されるところに、プログラミング言語側の対応するキーワードを使用できます。

次の表は、.NET Framework に用意されている値型と各値型についての簡単な説明、および Visual Basic、C#、C++ において対応する型を示します。また、多くの言語に対応するキーワードが存在する、Object クラスと String クラスのエントリも示します。

カテゴリ クラス名 説明 Visual Basic のデータ型 C# のデータ型 C++ データ型 JScript のデータ型

Integer

バイト型

8 ビット符号なし整数

Byte

byte

char

Byte

   

SByte

8 ビット符号付き整数

非 CLS 準拠

SByte

sbyte

signed char

SByte

   

Int16

16 ビット符号付き整数

Short

short

short

short

   

Int32

32 ビット符号付き整数

Integer

int

int

または

long

int

   

Int64

64 ビット符号付き整数

Long

long

__int64

long

   

UInt16

16 ビット符号なし整数

非 CLS 準拠

ushort

ushort

unsigned short

UInt16

   

UInt32

32 ビット符号なし整数

非 CLS 準拠

UInteger

uint

unsigned int

または

unsigned long

UInt32

   

UInt64

64 ビット符号なし整数

非 CLS 準拠

ulong

ulong

unsigned __int64

UInt64

浮動小数点数

単精度浮動小数点数型 (Single)

単精度 (32 ビット) 浮動小数点数

Single

float

float

float

   

倍精度浮動小数点数型

倍精度 (64 ビット) 浮動小数点数

Double

double

double

double

論理

ブール型

ブール値 (true または false)

Boolean

bool

bool

bool

その他

文字型 (Char)

Unicode (16 ビット) 文字

Char

char

wchar_t

char

   

10 進数

十進数 (128 ビット) の値です。

Decimal

decimal

Decimal

Decimal

   

IntPtr

基になるプラットフォームによってサイズが決まる符号付き整数 (32 ビットのプラットフォームでは 32 ビット値、64 ビットのプラットフォームでは 64 ビット値)

IntPtr

非組み込み型

IntPtr

非組み込み型

IntPtr

非組み込み型

IntPtr

   

UIntPtr

基になるプラットフォームによってサイズが決まる符号なし整数 (32 ビットのプラットフォームでは 32 ビット値、64 ビットのプラットフォームでは 64 ビット値)

非 CLS 準拠

UIntPtr

非組み込み型

UIntPtr

非組み込み型

UIntPtr

非組み込み型

UIntPtr

クラス オブジェクト

オブジェクト

オブジェクト階層構造のルート

Object

object

Object*

Object

   

文字列型

Unicode 文字の不変固定長文字列

String

string

String*

String

基本データ型に加えて、System 名前空間には、例外を処理するクラスから、コアのランタイム コンセプト (アプリケーション ドメインやガベージ コレクタなど) を扱うクラスまで、100 以上のクラスが含まれます。System 名前空間には、2 次レベルの名前空間も数多く含まれています。

名前空間の詳細については、「.NET Framework リファレンス」を参照してください。参照ドキュメントには、各名前空間の簡単な概要と、各型とそのメンバについての説明が記載されています。

参照

関連項目

.NET Framework クラス ライブラリ リファレンス

その他の技術情報

共通型システム
.NET Framework の概要