sealed 修飾子をクラスに適用すると、それ以外のクラスが、そのクラスから継承できなくなります。 次の例では、B クラスは A クラスを継承しますが、B クラスからはどのクラスも継承できなくなります。 class A {} sealed class B : A {} sealed 修飾子は、基底クラスの仮想メソッドまたは仮想プロパティをオーバーライドするメソッドやプロパティで使用することもできます。 これにより、クラスの派生が行えるようになり、そのクラスが特定の仮想メソッドまたは仮想プロパティをオーバーライドできなくなります。 例 次の例では、Z は Y から継承しますが、Z は仮想関数 F をオーバーライドできません。この仮想関数は X で宣言されており、Y でシールされています。 class X { protected virtual void F() { Console.Write
public value class System::SByte : IComparable, IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, IFormattable public value class System::SByte : IComparable, IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, ISpanFormattable public value class System::SByte : IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, IParsable<System::SByte>, ISpanP
例 次のコード例では、 コントロールを使用PrintDialogして、、ShowHelp、および Document の各プロパティを設定するAllowSomePages方法を示します。 この例を実行するには、 という名前のコントロールと というPrintDialog1名前のボタンButton1を含むPrintDialogフォームに次のコードを貼り付けます。 この例では、ボタンの Click イベントと のイベントdocToPrintがPrintPage、この例で定義されているイベント処理メソッドに接続されている必要があります。 // Declare the PrintDocument object. System::Drawing::Printing::PrintDocument^ docToPrint; // This method will set properties on the
例 1 次の例では、メソッドを Regex.Matches(String, String) 呼び出して、入力文字列内のすべてのパターン一致を取得します。 次に、返されたMatchCollectionオブジェクト内のMatchオブジェクトを反復処理して、各一致に関する情報を表示します。 using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string input = "int[] values = { 1, 2, 3 };\n" + "for (int ctr = values.GetLowerBound(1); ctr <= values.GetUpperBound(1); ctr++)\n" + "{\n" + " Console.Wr
public ref class Regex public ref class Regex : System::Runtime::Serialization::ISerializable public class Regex public class Regex : System.Runtime.Serialization.ISerializable [System.Serializable] public class Regex : System.Runtime.Serialization.ISerializable type Regex = class type Regex = class interface ISerializable [<System.Serializable>] type Regex = class interface ISerializable Public C
.NET では、タスク ベースの非同期パターンは、新しい開発に推奨される非同期設計パターンです。 これは、非同期操作を表すために使用されるTask名前空間のTask<TResult>型とSystem.Threading.Tasks型に基づいています。 名前付け、パラメーター、および戻り値の型 TAP では、1 つのメソッドを使用して、非同期操作の開始と完了を表します。 これは、非同期プログラミング モデル (APM または IAsyncResult) パターンとイベント ベースの非同期パターン (EAP) の両方と対照的です。 APM には、 Begin メソッドと End メソッドが必要です。 EAP には、 Async サフィックスを持つメソッドが必要です。また、1 つ以上のイベント、イベント ハンドラー デリゲート型、および EventArg派生型も必要です。 TAP の非同期メソッ
概要 継承(inheritance)とはオブジェクト指向の中核を担う概念で、 あるクラスから性質を受け継いだ新しいクラスを作ることです。 継承は派生(derivation)とも呼ばれます。 ポイント オブジェクト指向の中核概念その2: 継承。 「人間」⊃「学生」のように、包含関係のあるものを表現する方法。 「学生は人間を継承する」、「学生は人間から派生する」などと言う。 class Person { ... } に対して、class Student : Person { ... } と書く。 継承関係とは 継承関係の例として、「人間」と「学生」という2つのクラスについて考えて見ましょう。 「学生」は「人間」の一部です。 すなわち、「学生」ならば必ず「人間」としての特徴を備えています。 それとは逆に「人間」だからといって必ずしも「学生」であるとはいえません。 つまり、「学生」は「人間」の特別
Java5以降では総称型(generics)がJava言語に導入されています。総称型自体は、最近の静的な型付けのプログラミング言語で珍しいことではなく、現在の最新版では.NETのC#やVisual Basicにも導入されています。一般的には総称型をサポートするクラスライブラリを自分で正しく定義することは非常にスキルがいるが、事前に定義されたクラスを使うだけであれば、それほど難しくないとされています。しかし、Java言語の総称型は本エントリで説明するように特殊なところがあり、単に利用するだけでも他の言語に比べて遥かに難しいところがあるというのも事実です。特に総称型をパラメータ化する際に指定するワイルドカード型(List<? extends Serializable>など)の意味を正しく理解して使いこなすことは簡単なことではありません。その結果、昔のJDK1.4までのように型パラメーターのない
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く