ホームページ >バックエンド開発 >C#.Net チュートリアル >C# と Java の違いの比較分析
類似点:
は両方ともオブジェクト指向プログラミング言語であり、両方ともオブジェクト指向 (カプセル化、継承、ポリモーフィズム) のアイデアを実装できます。
違い:
1. C# の名前空間は Java のパッケージに似ており、Java でパッケージをインポートするには、c# では import を使用し、using を使用します。
2. C# も Java も main 関数から入りますが、c# の main 関数の最初の文字は大文字にする必要があります
3. データ型: Java と C# は基本的に同じです。ただし、Java String 型の最初の文字は大文字である必要がありますが、C# では小文字でも大文字でもかまいません。また、Java では boolean、C# では bool であるブール型もあります。
4. 変数の命名: $ 記号は Java では使用できますが、C# では使用できません。
5. 出力: C# には 3 つの出力方法があります: Cosole.WriteLine(); Cosole.WriteLine (出力する値); Cosole.WriteLine ("フォーマット文字列", 変数リスト); 最初の 2 つは使用法は Java の system.out.println() メソッドと同じです。3 番目のメソッドはプレースホルダー出力に基づいており、Java よりも便利です。
6. 制御フロー ステートメント: C# は Java に似ています、ケースの背後にコンテンツがある場合、C# のスイッチにはブレークが必要です。Java にはブレークは必要ありません。
7. Java の静的な Final 修飾子。 C# では、const キーワードを使用して定数を宣言できます。
8. アクセス修飾子: C# のアクセス修飾子は基本的に Java のアクセス修飾子に対応しますが、追加の内部修飾子があります。つまり、C# には次の 5 種類のアクセシビリティがあります。
public: メンバーには任意のコードからアクセスできます。 protected: メンバーには派生クラスからのみアクセスできます。
internal: メンバーには同じアセンブリ内からのみアクセスできます。
protected: メンバーには、同じアセンブリ内の派生クラスからのみアクセスできます。
private: メンバーは現在のクラス内でのみアクセスできます。
9. C# には Final キーワードが存在しないため、クラスを派生させたくない場合は、sealed キーワードを使用してクラスをシールできます。
10. コレクション: どちらの言語にもコレクション ArrayList があり、キーを介して値にアクセスするのは Java では HashMap、C# では HashTable です。 C# は Java の複数ジェネリック コレクションである List8742468051c85b06f0a0af9e3e506b5c や Dictionaryb77a8d9c3c319e50d4b02a976b347910 よりも簡単で、開梱して梱包する必要がなく、より安全です。
11. 継承: Java はキーワード extends を使用し、C# は ":" のみを使用します。親クラスのコンストラクター メソッドを呼び出すには、Java は super キーワードを使用しますが、C# は Base キーワードを使用します。
12. ポリモーフィズム: 抽象クラスと抽象メソッドの両方で、abstract キーワードが使用されます。 Java の別のクラスがこのメソッドを継承する場合は、このメソッドを直接オーバーライドできますが、C# では、キーワード override を追加して実装する必要があります。 C# には、ポリモーフィズムを実装するための仮想メソッドが Java よりも 1 つ多くあります。
13. インターフェース: これらはすべてキーワード「interface」で定義され、Java はキーワード「implements」で実装され、C# は「:」で実装されます。 C# では、インターフェイス内のすべてのメソッドはデフォルトでパブリック メソッドです。 Java では、メソッド宣言に public 修飾子を含めることができます (これは必須ではありません)。しかし、C# では、インターフェイス メソッドに public 修飾子を明示的に指定することは違法です。
14. C# の is 演算子は Java の instanceof 演算子と同じで、どちらもオブジェクトのインスタンスが特定の型に属しているかどうかをテストするために使用できます。 Java には、C# の as 演算子に相当する演算子はありません。 as 演算子は is 演算子とよく似ていますが、より「積極的」です: 型が正しい場合、as 演算子はテスト対象のオブジェクト参照をターゲットの型に変換しようとします。そうでない場合は、変数参照を null に設定します。 。
15. 配列の宣言
Java では、配列の宣言方法は非常に柔軟で、実際、正当な方法である配列の宣言方法が多数存在します。たとえば、次のコード行は同等です。
int[] x = { 0, 1, 2, 3 }; int x[] = { 0, 1, 2, 3 };
ただし、C# では、コードの最初の行のみが有効であり、変数名の後に [] を置くことはできません。
読んでくれた皆さん、ありがとうございます。たくさんの利益が得られることを願っています。 この記事は、https://blog.csdn.net/qq_39657909/article/details/80781481から転載されたものです:「C 言語」
以上がC# と Java の違いの比較分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。