C# と Java の違いの比較分析

Jun 30, 2020 pm 01:29 PM
c# java

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 の複数ジェネリック コレクションである List や Dictionary よりも簡単で、開梱して梱包する必要がなく、より安全です。

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 サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8は、Stream APIを導入し、データ収集を処理する強力で表現力のある方法を提供します。ただし、ストリームを使用する際の一般的な質問は次のとおりです。 従来のループにより、早期の中断やリターンが可能になりますが、StreamのForeachメソッドはこの方法を直接サポートしていません。この記事では、理由を説明し、ストリーム処理システムに早期終了を実装するための代替方法を調査します。 さらに読み取り:JavaストリームAPIの改善 ストリームを理解してください Foreachメソッドは、ストリーム内の各要素で1つの操作を実行する端末操作です。その設計意図はです

マルチスレッドと非同期C#の違い マルチスレッドと非同期C#の違い Apr 03, 2025 pm 02:57 PM

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

カプセルの量を見つけるためのJavaプログラム カプセルの量を見つけるためのJavaプログラム Feb 07, 2025 am 11:37 AM

カプセルは3次元の幾何学的図形で、両端にシリンダーと半球で構成されています。カプセルの体積は、シリンダーの体積と両端に半球の体積を追加することで計算できます。このチュートリアルでは、さまざまな方法を使用して、Javaの特定のカプセルの体積を計算する方法について説明します。 カプセルボリュームフォーミュラ カプセルボリュームの式は次のとおりです。 カプセル体積=円筒形の体積2つの半球体積 で、 R:半球の半径。 H:シリンダーの高さ(半球を除く)。 例1 入力 RADIUS = 5ユニット 高さ= 10単位 出力 ボリューム= 1570.8立方ユニット 説明する 式を使用してボリュームを計算します。 ボリューム=π×R2×H(4

XML形式を開く方法 XML形式を開く方法 Apr 02, 2025 pm 09:00 PM

ほとんどのテキストエディターを使用して、XMLファイルを開きます。より直感的なツリーディスプレイが必要な場合は、酸素XMLエディターやXMLSPYなどのXMLエディターを使用できます。プログラムでXMLデータを処理する場合、プログラミング言語(Pythonなど)やXMLライブラリ(XML.ETREE.ELEMENTTREEなど)を使用して解析する必要があります。

Spring Tool Suiteで最初のSpring Bootアプリケーションを実行するにはどうすればよいですか? Spring Tool Suiteで最初のSpring Bootアプリケーションを実行するにはどうすればよいですか? Feb 07, 2025 pm 12:11 PM

Spring Bootは、Java開発に革命をもたらす堅牢でスケーラブルな、生産対応のJavaアプリケーションの作成を簡素化します。 スプリングエコシステムに固有の「構成に関する慣習」アプローチは、手動のセットアップを最小化します。

XMLを単語に変換する方法 XMLを単語に変換する方法 Apr 03, 2025 am 08:15 AM

XMLを単語に変換するには、Microsoft Wordの使用、XMLコンバーターの使用、またはプログラミング言語の使用方法が3つあります。

CとC#の違いと接続は何ですか? CとC#の違いと接続は何ですか? Apr 03, 2025 pm 10:36 PM

CとC#には類似点がありますが、それらは完全に異なります。Cはプロセス指向の手動メモリ管理、およびシステムプログラミングに使用されるプラットフォーム依存言語です。 C#は、デスクトップ、Webアプリケーション、ゲーム開発に使用されるオブジェクト指向のガベージコレクション、およびプラットフォーム非依存言語です。

C#ジャミングを防ぐためのマルチスレッドメソッド C#ジャミングを防ぐためのマルチスレッドメソッド Apr 03, 2025 pm 02:54 PM

C#で「スタック」マルチスレッドを避けるための次の方法:UIスレッドでの時間のかかる操作を避けます。タスクと非同期を使用して、時間のかかる操作を非同期に実行します。 application.current.dispatcher.invokeを介してUIスレッドでUIを更新します。キャンセルトークンを使用して、タスクのキャンセルを制御します。スレッドプールを合理的に使用して、スレッドの過度の作成を避けます。コードの読みやすさと保守性に注意して、簡単にデバッグできます。ログは各スレッドに記録され、簡単にデバッグされます。

See all articles