例 次の例は、FileInfo クラスのメイン メンバーの一部を示しています。 プロパティが最初に取得されると、FileInfo は Refresh メソッドを呼び出し、ファイルに関する情報をキャッシュします。 後続の呼び出しでは、Refresh を呼び出して、情報の最新のコピーを取得する必要があります。 using namespace System; using namespace System::IO; int main() { String^ path = Path::GetTempFileName(); FileInfo^ fi1 = gcnew FileInfo( path ); //Create a file to write to. StreamWriter^ sw = fi1->CreateText(); try { sw->WriteLine( "Hello" ); sw
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
名前空間: System アセンブリ:System.Runtime.dll アセンブリ:mscorlib.dll アセンブリ:netstandard.dll ソース:SByte.cs ソース:SByte.cs ソース:SByte.cs 重要 一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。 public value class System::SByte : IComparable, IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, IFormattable public value class System::SByte : IComparable, IC
public ref class PrintDialog sealed : System::Windows::Forms::CommonDialog public sealed class PrintDialog : System.Windows.Forms.CommonDialog type PrintDialog = class inherit CommonDialog Public NotInheritable Class PrintDialog Inherits CommonDialog 継承 例 次のコード例では、 コントロールを使用PrintDialogして、、ShowHelp、および Document の各プロパティを設定するAllowSomePages方法を示します。 この例を実行するには、 という名前のコントロールと というPrintDialog1名前のボタンButton
例 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
名前空間: System.Text.RegularExpressions アセンブリ:System.Text.RegularExpressions.dll アセンブリ:System.dll アセンブリ:netstandard.dll ソース:Regex.cs ソース:Regex.cs ソース:Regex.cs 重要 一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。 public ref class Regex public ref class Regex : System::Runtime::Serialization::ISerializable public class Regex public class Regex : System.R
DataTableで使用する列(Columnsプロパティ)の操作を説明します。 列(フィールド)の追加および主キーの設定をする Dim tbl As DataTable = New DataTable("Table1") Dim PrimaryColumn As DataColumn PrimaryColumn = tbl.Columns.Add("ID", Type.GetType("System.Int32")) tbl.Columns.Add("Item1", Type.GetType("System.String")) tbl.Columns.Add("Item2", Type.GetType("System.String")) tbl.Columns.Add("Item3", Type.GetType("System.Double")) 'フィールドに主キーを設定(IDを主キーに
.NET では、新規開発に推奨される非同期設計パターンは、タスク ベースの非同期パターンです。 それは、非同期操作を表すために使用される、System.Threading.Tasks 名前空間の Task および Task<TResult> 型に基づいています。 名前付け、パラメーター、および戻り値の型 TAP では、非同期操作の開始と終了を表すために単一のメソッドが使用されます。 これは、非同期プログラミング モデル (APM または IAsyncResult) パターンとイベントベースの非同期パターン (EAP) の両方とは対照的です。 APM では、Begin と End メソッドが必要です。 EAP では、Async サフィックスを持つメソッドが必要であり、1 つ以上のイベント、イベント ハンドラー デリゲート型、および EventArg 派生型も必要です。 TAP の非同期メソッ
概要 継承(inheritance)とはオブジェクト指向の中核を担う概念で、 あるクラスから性質を受け継いだ新しいクラスを作ることです。 継承は派生(derivation)とも呼ばれます。 ポイント オブジェクト指向の中核概念その2: 継承。 「人間」⊃「学生」のように、包含関係のあるものを表現する方法。 「学生は人間を継承する」、「学生は人間から派生する」などと言う。 class Person { ... } に対して、class Student : Person { ... } と書く。 継承関係とは 継承関係の例として、「人間」と「学生」という2つのクラスについて考えて見ましょう。 「学生」は「人間」の一部です。 すなわち、「学生」ならば必ず「人間」としての特徴を備えています。 それとは逆に「人間」だからといって必ずしも「学生」であるとはいえません。 つまり、「学生」は「人間」の特別
.NET Framework で定義されているイベントをオーバーライドするための基本的な手順は、いずれの場合も同じです。次の一覧は、それをまとめたものです。 継承元のイベントをオーバーライドするには 保護された OnEventName メソッドをオーバーライドします。 オーバーライドされた OnEventName メソッドから基底クラスの OnEventName メソッドを呼び出して、登録されているデリゲートがイベントを受け取るようにします。 Paint イベントについてここで詳しく説明するのは、すべての Windows フォーム コントロールで、Control から継承した Paint イベントをオーバーライドする必要があるためです。 基底の Control クラスは、派生コントロールをどのように描画する必要があるのかは把握せず、OnPaint メソッドの描画ロジックを提供することもあり
プロパティの概要については、「プロパティの概要」を参照してください。 プロパティを定義するときには、いくつかの重要な考慮事項があります。 定義するプロパティに属性を適用する必要があります。 属性によって、デザイナーでプロパティがどのように表示されるかが指定されます。 詳細については、「コンポーネントのデザイン時属性」を参照してください。 プロパティの変更がコントロールのビジュアル表示に影響する場合は、set アクセサーから (コントロールによって Control から継承される) Invalidate メソッドを呼び出します。 次に Invalidate によって OnPaint メソッドが呼び出されます。これにより、コントロールが再描画されます。 Invalidate を複数回呼び出しても、効率のため OnPaint が呼び出されるのは 1 回です。 .NET Framework クラス
SignalRとknockout.js ASP.NET SignalR(以降、SignalR)を使うと、リアルタイムに変化するデータを、サーバーから簡単に受け取れるようになる。しかし実際のところ、そのデータをビューに反映させることが非常に手間である。理由としては、jQueryなどのライブラリを使ったとしても、「ビュー上の要素をidやclass名などの識別子を用いて取得し、値を更新」という方法しかないためだ(次のコードはその例である)。
Java5以降では総称型(generics)がJava言語に導入されています。総称型自体は、最近の静的な型付けのプログラミング言語で珍しいことではなく、現在の最新版では.NETのC#やVisual Basicにも導入されています。一般的には総称型をサポートするクラスライブラリを自分で正しく定義することは非常にスキルがいるが、事前に定義されたクラスを使うだけであれば、それほど難しくないとされています。しかし、Java言語の総称型は本エントリで説明するように特殊なところがあり、単に利用するだけでも他の言語に比べて遥かに難しいところがあるというのも事実です。特に総称型をパラメータ化する際に指定するワイルドカード型(List<? extends Serializable>など)の意味を正しく理解して使いこなすことは簡単なことではありません。その結果、昔のJDK1.4までのように型パラメーターのない
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く