C# でインターフェイス オブジェクトをインスタンス化する方法の詳細な紹介
以下のエディターは、インターフェイス オブジェクトをインスタンス化する方法に関する記事 C# を提供します。編集者はこれがとても良いと思ったので、参考として共有します。エディターに従って見てみましょう
head first デザイン パターンでは非常に多くのインターフェイス オブジェクトが使用されています
まず、インターフェイスはオブジェクトを宣言するだけでなく、オブジェクトをインスタンス化することもできるという問題を明確にしましょう。パラメータとして渡すこともできます。
1. インターフェースコールバック
これは継承における上方変換です。親クラス FL=new subclass (); ただし、ここでの親クラスはインターフェイス インターフェイスです。 (個人的にはクラスのオーバーライドでもインターフェースの書き換えでも使い方は同じだと思っています)
あるインターフェースを実装したクラスが作成したオブジェクトの参照を、そのインターフェースで宣言したインターフェース変数に代入することで、インターフェイス変数は、クラスによって実装されたインターフェイス内のメソッドを呼び出すことができます。実際、インターフェース変数がクラスによって実装されたインターフェースのメソッドを呼び出すと、対応するオブジェクトにインターフェースのメソッド
をコード内で直接呼び出すように通知されます
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { interface Itemp { double plus(); } public class num : Itemp { double aa, bb; public num(double a, double b) { this.bb = b; this.aa = a; } public double plus() { return (aa * bb); } } class Program { static void Main(string[] args) { num n = null;//声明类对象引用 Itemp tm = null;//声明接口对象引用 tm = new num(1.1, 2.2);//接口回调(向上转型) Console.WriteLine(tm.plus()); Console.ReadKey(); } } }
上記の例を通して、それは難しいことではありませんインターフェイス オブジェクトのインスタンス化が、実際にはそのメソッドを実装するクラス内のすべてのメソッドを指す参照としてのインターフェイス オブジェクトであることがわかります。これは、C++ の 関数ポインター に非常に似ています (C# のデリゲートに似ています)。 , しかし、それには違いがあります。 C# のインターフェイス オブジェクトのインスタンス化は実際には 1 対多ですが、C++ の関数ポインターは 1 対 1 です。
ただし、インターフェイス オブジェクトのインスタンス化は、それを実装するクラスでインスタンス化する必要があり、インターフェイス自体でインスタンス化することはできないことに注意してください。 C# では、インターフェイス自体を使用して独自のオブジェクトをインスタンス化することはできません。
以上がC# でインターフェイス オブジェクトをインスタンス化する方法の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









C# を使用した Active Directory のガイド。ここでは、Active Directory の概要と、C# での動作方法について、構文と例とともに説明します。

C# データ グリッド ビューのガイド。ここでは、SQL データベースまたは Excel ファイルからデータ グリッド ビューをロードおよびエクスポートする方法の例について説明します。

マルチスレッドと非同期の違いは、マルチスレッドが複数のスレッドを同時に実行し、現在のスレッドをブロックせずに非同期に操作を実行することです。マルチスレッドは計算集約型タスクに使用されますが、非同期はユーザーインタラクションに使用されます。マルチスレッドの利点は、コンピューティングのパフォーマンスを改善することですが、非同期の利点はUIスレッドをブロックしないことです。マルチスレッドまたは非同期を選択することは、タスクの性質に依存します。計算集約型タスクマルチスレッド、外部リソースと相互作用し、UIの応答性を非同期に使用する必要があるタスクを使用します。
