これはタイプセーフでマネージ言語です。多くのオペレーティング システムでこの言語が使用されているため、この言語をよく理解する必要があります。需要が高く、その汎用性により、多くのオペレーティング システムをサポートできます。
あなたは、ついに C# で夢の仕事を見つけましたが、2023 年の C# 面接に合格する方法と、予想される C# 面接の質問が何なのか疑問に思っています。面接は毎回異なりますし、仕事の範囲も異なります。これを念頭に置いて、面接で成功するために役立つ、最も一般的な C# 面接の質問と回答を作成しました。
この最初のパートでは、基本的な C# 面接の質問と回答について説明します。
答え:
マネージド コードは .Net プラットフォームで実行されます。そのプラットフォームに基づくすべてのアプリケーション コードに CLR (共通言語ランタイム) を使用します。アプリケーションは、実行されると、メモリ、セキュリティ、パフォーマンスなどの要素を管理します。これらは、面接で予想される重要な C# 面接の質問の 1 つです。
答え:
C# には 4 種類のクラスがあります。それらは次のとおりです:
1) 静的クラス: このクラスは継承を許可しません。このクラス内のメンバーは静的であり、キーワード「static」によって識別されます。
2) 抽象クラス: このクラスは、キーワード抽象によって示されます。これらのクラスのオブジェクトはインスタンス化できません。このクラスは継承のみが可能で、少なくとも 1 つのメソッドを含める必要があります。
3) Sealed クラス: このクラスは継承できません。アクセスするには、このクラスのオブジェクトを作成する必要があります。 Sealed というキーワードを使用して作成されています。
4) 部分クラス: 「partial」キーワードを使用すると、クラスを「部分」として指定でき、そのメンバーを複数の .cs ファイル間で分割または共有できます。
次の C# 面接の質問に進みましょう。
答え:
C# は System.IO 名前空間を使用します。これは、作成、削除、開く、閉じるなどのさまざまな操作を実行するクラスで構成されます。一般的に使用される I/O クラスは次のとおりです。
答え:
これらのクラスは両方とも名前空間 System.IO に属します。 StreamReader クラスには、close()、read()、Readline() などのメンバーが含まれています。 StreamWrier クラスには、close()、write()、writeline() などのメンバーが含まれています。
class Program1 { using(StreamReader sr = new StreamReader("C:\ReadMe.txt") { //----------------code to read-------------------// } using(StreamWriter sw = new StreamWriter("C:\ReadMe.txt")) { //-------------code to write-------------------// } }
答え:
ボックス化は、値が参照型に変換されるものです。
例:
int value -= 20; //-----------Boxing------------// Object boxValue= value;
ここで、boxValue は「値」を参照します。
アンボックス化は、参照型から値型に明示的に変換するプロセスです。
例:
//————UnBoxing——————// int UnBoxing = int (boxedValue);
参照をボックス化解除して元の値に戻します。
高度な C# 面接の質問を見てみましょう。
答え:
指定された入力セットに一致するように正規表現をパターン化してテンプレートに変換します。これらのパターンには、演算子、文字リテラル、記号などが含まれる場合があります。開発者は通常、正規表現 (regex) を使用して文字列を解析したり、文字列内の特定の文字を置き換えたりします。正規表現を使用すると、開発者は特定の入力ファイルまたは文字列内の任意のパターンを検索できるため、テキストベースのデータを処理するための強力なツールになります。
例:
static void Main(string[] args) { string[] lang = { "C#", "Python", "Java" }; foreach(string s in lang) { if(System.Text.RegularExpressions.Regex.IsMatch(s,"Python")) { Console.WriteLine("Match found"); } } }
このコード例では、Python を利用して配列内の特定の言語を検索します。このメソッドを使用すると、開発者は正規表現を使用して入力内の特定の一致を見つけることができます。
答え:
さまざまなタイプのデリゲートは次のとおりです:
答え: ラムダ式は、C# で匿名メソッドを定義する簡潔な方法です。これは、LINQ クエリやデリゲートまたはイベント ハンドラーの定義によく使用されます。ラムダ式を使用すると、コードがより読みやすく、表現力が豊かになります。
答え: デリゲートは、特定のパラメーター リストと戻り値の型を持つメソッドへの参照を表す型です。デリゲートはコールバック メソッドの定義とイベント処理の実装に使用され、C# イベントとコールバックの基本的な部分です。
答え: ボックス化は値型を参照型に変換するプロセスであり、アンボックス化はボックス化された値を値型に変換する逆のプロセスです。ボックス化とボックス化解除はパフォーマンスに影響を与える可能性があるため、慎重に使用する必要があります。
以上がC# 面接の質問と回答の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。