-
C#のクラスとオブジェクトの違いは何ですか?
クラスを定義するときは、データ型の青写真を定義します。 オブジェクトはクラスのインスタンスです。クラスを構成するメソッドと変数は、クラスのメンバーと呼ばれます。 クラスメンバーにアクセスするには、オブジェクト名の後にドット(。)演算子を使用します。ドット演算子は、オブジェクトの名前をメンバーの名前にリンクします。たとえば、 Box Box1 = new Box(); 上に、Box1がオブジェクトであることがわかります。メンバーにアクセスするために使用します- Box1.height = 7.0; メンバー関数を呼び出すためにも使用できます- Box1.getVolume(); 以下は
-
C#のクラスと構造の違いは何ですか?
構造 C#では、構造体は値型のデータ型です。これは、単一の変数にさまざまなデータ型の関連データを保持させるのに役立ちます。 structキーワードは、構造体の作成に使用されます。 構造体を定義するには、structステートメントを使用する必要があります。 structステートメントは、プログラムに複数のメンバーを含む新しいデータ型を定義します。 クラス クラスを定義するときは、データ型の青写真を定義します。クラス定義は、キーワードclassで始まり、その後にクラス名が続き、クラス本体は中括弧のペアで囲まれています。 構造とクラス 構造体は値型であり、クラスは参照型です。 クラ
-
C#のコンポジションとアグリゲーションの違いは何ですか?
[構成]で、親オブジェクトが削除されると、子オブジェクトもそのステータスを失います。構成は特殊なタイプの集約であり、一部の関係を提供します。 たとえば、車にはエンジンがあります。車が破壊されると、エンジンも破壊されます。 public class Engine { . . . } public class Car { Engine eng = new Engine(); ....... } 集約は、C#のオブジェクト間の方向関係です。オブジェクト間の関係です。 たとえば、従業員と
-
C#の動的バインディングとは何ですか?
動的バインディングでは、コンパイラーはコンパイル時に型チェックを行いません。実行時に、チェックが行われます。 これを使用して、匿名タイプが1つのメソッドに制限されないようにします。これは、型名がコンパイラーにのみ表示されるためです。したがって、メソッドの戻り値として宣言することはできません。 例を見てみましょう- public dynamic GetAnonymousType() { return new { StudentName = "Jack", Subj
-
C#のアーリーバインディングとは何ですか?
コンパイル時に関数をオブジェクトにリンクするメカニズムは、アーリーバインディングと呼ばれます。静的バインディングとも呼ばれます。 C#は、静的ポリモーフィズムを実装するための2つの手法、つまり関数のオーバーロードと演算子のオーバーロードを提供します。 例を使って関数のオーバーロードについて学びましょう- 同じスコープ内の同じ関数名に対して複数の定義を持つことができます。関数の定義は、引数リスト内の引数のタイプや数によって互いに異なる必要があります。戻り値のタイプのみが異なる関数宣言をオーバーロードすることはできません。 以下は完全な例です- 例 using System; namesp
-
C#の単項演算子とは何ですか?
以下は、C#の単項演算子です- + - ! ~ ++ -- (type)* & sizeof sizeof演算子について学びましょう。 sizeofは、データ型のサイズを返します。 intデータ型のサイズを見つける必要があるとしましょう- sizeof(int) 二重データ型の場合- sizeof(double) さまざまなデータ型のサイズを見つけるための完全な例を見てみましょう- 例 using System; namespace Demo { class Program { static void M
-
C#のユーザー定義データ型とは何ですか?
C#でのユーザー定義のデータ型は、構造体と列挙型です。 構造 C#では、構造体は値型のデータ型です。これは、単一の変数にさまざまなデータ型の関連データを保持させるのに役立ちます。 structキーワードは、構造体の作成に使用されます。 C#構造には次の機能があります- 構造体には、メソッド、フィールド、インデクサー、プロパティ、演算子メソッド、およびイベントを含めることができます。 構造にはコンストラクタを定義できますが、デストラクタを含めることはできません。ただし、構造体のデフォルトのコンストラクターを定義することはできません。デフォルトのコンストラクターは自動的に定義され、変更できま
-
C#のユーザー定義の例外とは何ですか?
他のプログラミング言語と同様に、C#では、ユーザー定義の例外を簡単に作成できます。ユーザー定義の例外クラスは、Exceptionクラスから派生します。カスタム例外は、ユーザー定義の例外と呼ばれるものです。 以下の例では、作成された例外は組み込みの例外ではありません。これはカスタム例外です- TempIsZeroException 次のコードを実行して、C#でユーザー定義の例外を作成する方法を学ぶことができます- 例 using System; namespace Demo { class TestTemperature {  
-
C#の代入演算子とは何ですか?
C#の代入演算子を使用して、変数に値を代入します。 以下は、C#の代入演算子です- オペレーター 説明 例 = 単純な代入演算子、右側のオペランドから左側のオペランドに値を代入します C =A + Bは、A+Bの値をCに割り当てます + = AND代入演算子を追加します。これは、右のオペランドを左のオペランドに追加し、結果を左のオペランドに割り当てます。 C +=AはC=C+Aと同等です -= 減算AND代入演算子、左オペランドから右オペランドを減算し、その結果を左オペランドに代入します C-=AはC=C –Aと同等です * = 乗算AND代入演算子、右
-
C#での集計とは何ですか?
集約は、C#のオブジェクト間の方向関係です。オブジェクト間の関係です。 たとえば、従業員と住所 従業員は単一の部門に関連付けられていますが、部門には複数の従業員を含めることができます。従業員と住所の例を見てみましょう- public class Address { . . . } public class Employee { private Address addr; public Employee (Address addr) { this.addr = ad
-
C#でのカプセル化とは何ですか?
C#でカプセル化すると、実装の詳細にアクセスできなくなります。アクセス指定子を使用してC#でカプセル化を実装します。 以下は、C#でサポートされているアクセス指定子です- 公開 プライベート 保護 内部 保護された内部 カプセル化は、クラスがそのメンバー変数とメンバー関数を他の関数やオブジェクトから隠すことを可能にするプライベートアクセス指定子の例をとることで理解できます。 次の例では、プライベートアクセス指定子-が割り当てられた変数として長さと幅があります。 例 using System; namespace RectangleApplication {  
-
C#での列挙とは何ですか?
列挙型は、年、製品、月、季節などの名前付き定数のセットを格納する列挙型です。 列挙型定数のデフォルト値は0から始まり、増分します。定数のセットが固定されており、簡単にトラバースできます。 例を見てみましょう。 このように列挙型を設定しました- public enum Vehicle { Car, Bus, Truck } 以下は完全な例です- 例 using System; public class Demo { public enum Vehicle { Car, Bus, Truck } public static void
-
C#での例外処理とは何ですか?
例外は、プログラムの実行時に発生する問題です。次のキーワードは、C#の例外を処理します。 試してください tryブロックは、特定の例外がアクティブ化されているコードのブロックを識別します。 キャッチ catchキーワードは、例外のキャッチを示します。 最後に 例外がスローされるかどうかに関係なく、指定された一連のステートメントを実行します。 投げる プログラムに問題が発生すると、例外がスローされます。 C#プログラムでエラーを処理する例を見てみましょう- using System; namespace MyErrorHandlingApplication { &nb
-
C#の最後のステートメントは何ですか?
最後のブロックは、例外がスローされるかどうかに関係なく、特定のステートメントのセットを実行するために使用されます。たとえば、ファイルを開く場合、例外が発生したかどうかに関係なく、ファイルを閉じる必要があります。 エラー処理ブロックは、try、catch、finallyキーワードを使用して実装されます。 例 次のコードを実行して、finallyステートメントを実装してみてください- using System; namespace ErrorHandlingApplication { class DivNumbers { i
-
配列クラスのArray.IsFixedSizeプロパティはC#で何をしますか?
ArrayListクラスのIsFixedSizeプロパティは、ArrayListのサイズが固定されているかどうかを示す値を取得するために使用されます。 以下は、isFixedSizeプロパティの使用法を示す例です- 例 using System; using System.Collections; class Demo { public static void Main() { ArrayList arrList = new ArrayList(); Console.WriteL
-
配列クラスのArray.IsReadOnlyプロパティはC#で何をしますか?
Array.IsReadOnlyプロパティは、配列が読み取り専用かどうかを示す値を取得します。 まず、配列の値を設定します- Array arr = Array.CreateInstance(typeof(String), 3); arr.SetValue("Electronics", 0); arr.SetValue("Clothing", 1); 次に、IsReadOnlyプロパティを使用して、配列が読み取り専用かどうかを確認します。アレイが読み取り専用の場合、更新できません- arr.IsReadOnly 以下は、Array.IsReadOn
-
C#のポリモーフィズムとは何ですか?
ポリモーフィズムは静的または動的にすることができます。静的ポリモーフィズムでは、関数への応答はコンパイル時に決定されます。動的ポリモーフィズムでは、実行時に決定されます。 静的ポリモーフィズムでは、関数への応答はコンパイル時に決定されます。動的ポリモーフィズムでは、実行時に決定されます。動的ポリモーフィズムは、遅延バインディングと呼ばれるものです。 コンパイル時のポリモーフィズムまたは静的バインディング コンパイル時に関数をオブジェクトにリンクするメカニズムは、アーリーバインディングと呼ばれます。静的バインディングとも呼ばれます。 ランタイムポリモーフィズムまたは動的バインディング ラン
-
C#のオーバーロードとは何ですか?
C#は、静的ポリモーフィズムを実装するための2つの手法を提供します- 関数のオーバーロード 演算子のオーバーロード 関数のオーバーロード 名前は同じでパラメータが異なる2つまたは3つ以上のメソッドは、C#で関数のオーバーロードと呼ばれるものです。 C#での関数のオーバーロードは、引数の数と引数のデータ型を変更することで実行できます。 数値の乗算を出力する関数があるとすると、オーバーロードされたメソッドの名前は同じですが、引数の数が異なります- public static int mulDisplay(int one, int two) { } public static int mu
-
配列クラスのArray.LengthプロパティはC#で何をしますか?
C#のArray.Lenthプロパティは、配列の長さを見つけるために使用されます。 最初に配列クラスを設定しましょう- Array arr = Array.CreateInstance(typeof(String), 3); arr.SetValue("Electronics", 0); arr.SetValue("Clothing", 1); arr.SetValue("Appliances", 2); 配列の長さは3なので、Lengthプロパティの結果は3-になります。 arr.Length 以下は、配列クラスのArray.
-
配列クラスのArray.LongLengthプロパティはC#で何をしますか?
Array.LongLengthプロパティは、配列のすべての次元の要素の総数を表す64ビット整数を取得します。 長いデータ型の配列が-であるとしましょう long[,] arr1= new long[15, 35]; LongLengthプロパティを使用して、配列のすべての次元の要素の総数を表す整数を取得します- arr1.LongLength 配列クラスのArray.LongLengthプロパティを実装する例を見てみましょう- 例 using System; class Program { static void Main() {