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

.NET Framework.NET Framework には、開発プロセスを高速化および最適化し、システム機能へのアクセスを提供する、クラス、インターフェイス、および値型があります。The .NET Framework.NET Framework includes classes, interfaces, and value types that expedite and optimize the development process and provide access to system functionality. 言語間での相互運用性を確保するために、.NET Framework のほとんどの型は共通言語仕様 (CLS: Common Language Specification) に準拠しています。このため、コンパイラが CLS に準拠しているすべてのプログラミング言語でこれらの型を使用できます。To facilitate interoperability between languages, most .NET Framework types are CLS-compliant and can therefore be used from any programming language whose compiler conforms to the common language specification (CLS).

.NET Framework の型は、.NET アプリケーション、.NET コンポーネント、および .NET コントロールを構築するときの基礎となります。The .NET Framework types are the foundation on which .NET applications, components, and controls are built. .NET Framework.NET Framework には、次の機能を実行する型が用意されています。The .NET Framework.NET Framework includes types that perform the following functions:

  • 基本データ型と例外を表す。Represent base data types and exceptions.

  • データ構造をカプセル化する。Encapsulate data structures.

  • 入出力を実行する。Perform I/O.

  • 読み込まれた型についての情報にアクセスする。Access information about loaded types.

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

  • データ アクセス、豊富なクライアント側 GUI、およびサーバー制御式のクライアント側 GUI を提供する。Provide data access, rich client-side GUI, and server-controlled, client-side GUI.

.NET Framework.NET Framework には、豊富なインターフェイスのセットに加えて、抽象クラスと具象 (抽象ではない) クラスが用意されています。The .NET Framework.NET Framework provides a rich set of interfaces, as well as abstract and concrete (non-abstract) classes. 具象クラスはそのまま使用できますが、多くの場合は、具象クラスから独自のクラスを派生させます。You can use the concrete classes as is or, in many cases, derive your own classes from them. インターフェイスの機能を使用するには、インターフェイスを実装するクラスを作成するか、またはインターフェイスを実装する .NET Framework クラスの 1 つからクラスを派生させます。To use the functionality of an interface, you can either create a class that implements the interface or derive a class from one of the .NET Framework classes that implements the interface.

名前付け規則Naming Conventions

.NET Framework の型では、階層構造を伴うドット構文の名前付け方法が使われます。.NET Framework types use a dot syntax naming scheme that connotes a hierarchy. この方法では、関連する型が名前空間にグループ化されるため、検索と参照を簡単に行うことができます。This technique groups related types into namespaces so they can be searched and referenced more easily. フルネームのうち右端のドットまでの最初の部分は、名前空間の名前です。The first part of the full name — up to the rightmost dot — is the namespace name. 名前の最後の部分は型名です。The last part of the name is the type name. たとえば、System.Collections.ArrayListArrayList 型であり、名前空間 System.Collections に属します。For example, System.Collections.ArrayList represents the ArrayList type, which belongs to the System.Collections namespace. System.Collections 内の型を使用することで、オブジェクトのコレクションを操作できます。The types in System.Collections can be used to manipulate collections of objects.

この名前付け方法によって、.NET Framework.NET Framework を拡張するライブラリ開発者は、型の階層構造のグループを簡単に作成し、一貫性のあるわかりやすい名前を付けることができます。This naming scheme makes it easy for library developers extending the .NET Framework.NET Framework to create hierarchical groups of types and name them in a consistent, informative manner. また、型の完全名 (つまり名前空間と型名) によって型を明確に特定できるため、型名の競合を防ぐことができます。It also allows types to be unambiguously identified by their full name (that is, by their namespace and type name), which prevents type name collisions. ライブラリ開発者は、次の規則に従って名前空間の名前を付けてください。Library developers are expected to use the following convention when creating names for their namespaces:

CompanyName.TechnologyNameCompanyName.TechnologyName

たとえば、名前空間 Microsoft.Word はこのガイドラインに従っています。For example, the namespace Microsoft.Word conforms to this guideline.

名前付けパターンを使用して関連する型を名前空間にグループ化する方法は、クラス ライブラリを構築および文書化するのに便利です。The use of naming patterns to group related types into namespaces is a very useful way to build and document class libraries. ただし、この名前付け方法は、参照可能範囲、メンバー アクセス、継承、セキュリティ、バインディングには影響しません。However, this naming scheme has no effect on visibility, member access, inheritance, security, or binding. 名前空間は複数のアセンブリにまたがって分割でき、また 1 つのアセンブリに複数の名前空間からの型を含めることができます。A namespace can be partitioned across multiple assemblies and a single assembly can contain types from multiple namespaces. アセンブリは、共通言語ランタイムにおけるバージョン管理、配置、セキュリティ、読み込み、および参照可能範囲のための構造を提供します。The assembly provides the formal structure for versioning, deployment, security, loading, and visibility in the common language runtime.

名前空間と型の名前の詳細については、「Common Type System」(共通型システム) を参照してください。For more information on namespaces and type names, see Common Type System.

名前空間 SystemSystem Namespace

System 名前空間は、.NET Framework.NET Framework における基本的な型のルート名前空間です。The System namespace is the root namespace for fundamental types in the .NET Framework.NET Framework. この名前空間には、Object (継承階層構造のルート)、ByteCharArrayInt32String など、すべてのアプリケーションで使用される基本データ型を表すクラスが含まれます。This namespace includes classes that represent the base data types used by all applications: Object (the root of the inheritance hierarchy), Byte, Char, Array, Int32, String, and so on. これらの型の多くは、プログラミング言語で使われるプリミティブなデータ型に対応します。Many of these types correspond to the primitive data types that your programming language uses. .NET Framework の型を使用してコードを記述するときには、.NET Framework の基本データ型が使用されるところに、プログラミング言語側の対応するキーワードを使用できます。When you write code using .NET Framework types, you can use your language's corresponding keyword when a .NET Framework base data type is expected.

次の表では、.NET Framework.NET Framework に用意されているそれぞれの基本型の一覧を示し、各型について簡単に説明し、Visual Basic、C#、C++、JScript での対応する型を示します。The following table lists the base types that the .NET Framework.NET Framework supplies, briefly describes each type, and indicates the corresponding type in Visual Basic, C#, C++, and JScript.

カテゴリCategory クラス名Class name 説明Description Visual Basic のデータ型Visual Basic data type C# のデータ型C# data type C++ データ型C++ data type JScript のデータ型JScript data type
整数型Integer Byte 8 ビット符号なし整数。An 8-bit unsigned integer. ByteByte bytebyte unsigned charunsigned char ByteByte
SByte 8 ビット符号付き整数。An 8-bit signed integer.

非 CLS 準拠Not CLS-compliant.
SByteSByte sbytesbyte charchar

- または --or-

signed charsigned char
SByteSByte
Int16 16 ビット符号付き整数。A 16-bit signed integer. ShortShort shortshort shortshort shortshort
Int32 32 ビット符号付き整数。A 32-bit signed integer. IntegerInteger intint intint

- または --or-

longlong
intint
Int64 64 ビット符号付き整数。A 64-bit signed integer. LongLong longlong __int64__int64 longlong
UInt16 16 ビット符号なし整数。A 16-bit unsigned integer.

非 CLS 準拠Not CLS-compliant.
UShortUShort ushortushort unsigned shortunsigned short UInt16UInt16
UInt32 32 ビット符号なし整数A 32-bit unsigned integer.

非 CLS 準拠Not CLS-compliant.
UIntegerUInteger uintuint unsigned intunsigned int

- または --or-

unsigned longunsigned long
UInt32UInt32
UInt64 64 ビット符号なし整数。A 64-bit unsigned integer.

非 CLS 準拠Not CLS-compliant.
ULongULong ulongulong unsigned __int64unsigned __int64 UInt64UInt64
浮動小数点数Floating point Single 単精度 (32 ビット) 浮動小数点数A single-precision (32-bit) floating-point number. SingleSingle floatfloat floatfloat floatfloat
Double 倍精度 (64 ビット) 浮動小数点数A double-precision (64-bit) floating-point number. DoubleDouble doubledouble doubledouble doubledouble
論理Logical Boolean ブール値 (true または false)A Boolean value (true or false). BooleanBoolean boolbool boolbool boolbool
その他Other Char Unicode (16 ビット) 文字A Unicode (16-bit) character. CharChar charchar wchar_twchar_t charchar
Decimal 十進数 (128 ビット) の値です。A decimal (128-bit) value. DecimalDecimal decimaldecimal DecimalDecimal DecimalDecimal
IntPtr 基になるプラットフォームによってサイズが決まる符号付き整数 (32 ビットのプラットフォームでは 32 ビット値、64 ビットのプラットフォームでは 64 ビット値)A signed integer whose size depends on the underlying platform (a 32-bit value on a 32-bit platform and a 64-bit value on a 64-bit platform). IntPtrIntPtr

非組み込み型No built-in type.
IntPtrIntPtr

非組み込み型No built-in type.
IntPtrIntPtr

非組み込み型No built-in type.
IntPtrIntPtr
UIntPtr 基になるプラットフォームによってサイズが決まる符号なし整数 (32 ビットのプラットフォームでは 32 ビット値、64 ビットのプラットフォームでは 64 ビット値)An unsigned integer whose size depends on the underlying platform (a 32- bit value on a 32-bit platform and a 64-bit value on a 64-bit platform).

非 CLS 準拠Not CLS-compliant.
UIntPtrUIntPtr

非組み込み型No built-in type.
UIntPtrUIntPtr

非組み込み型No built-in type.
UIntPtrUIntPtr

非組み込み型No built-in type.
UIntPtrUIntPtr
クラス オブジェクトass objects Object オブジェクト階層構造のルートThe root of the object hierarchy. オブジェクトObject objectobject Object\*Object*** オブジェクトObject
String Unicode 文字の不変固定長文字列An immutable, fixed-length string of Unicode characters. StringString stringstring String\*String*** StringString

基本データ型に加えて、System 名前空間には、例外を処理するクラスから、核となるランタイム概念 (アプリケーション ドメインやガベージ コレクターなど) を扱うクラスまで、100 以上のクラスが含まれます。In addition to the base data types, the System namespace contains over 100 classes, ranging from classes that handle exceptions to classes that deal with core runtime concepts, such as application domains and the garbage collector. System 名前空間には、2 次レベルの名前空間も数多く含まれています。The System namespace also contains many second-level namespaces.

名前空間の詳細については、「.NET Framework クラス ライブラリ リファレンス」を参照してください。For more information about namespaces, browse the .NET Framework Class Library. 参照ドキュメントには、各名前空間の簡単な概要と、各型とそのメンバーについての説明が記載されています。The reference documentation provides a brief overview of each namespace as well as a formal description of each type and its members.

参照See Also

共通型システムCommon Type System
.NET Framework クラス ライブラリ.NET Framework Class Library
概要Overview