ホームページ Java &#&チュートリアル C#とJavaの違いは何ですか

C#とJavaの違いは何ですか

Nov 11, 2019 pm 01:16 PM
c# java 違い

C#とJavaの違いは何ですか

Java と C# はどちらもプログラミング言語であり、2 つの異なる方向性を持つ 2 つの言語です。

同じ点:

これらはすべてオブジェクト指向言語です。つまり、すべてオブジェクト指向のアイデア (カプセル化、継承、ポリモーフィズム) を実装できます。

違い:

1. C# の名前空間は Java のパッケージに似ており、Java でパッケージをインポートするには import を使用し、C# では use を使用します。

2. C#もJavaもmain関数から入りますが、c#のmain関数の先頭文字は大文字にする必要があり、以下の4通りの書き方があります。 }

static int Main(string args[]){}

static void Main(){}

static void Main(){}

そして Java には static void main(String [] args){}

3 という形式が 1 つだけあります。データ型: Java と C# は基本的に同じですが、Java では String 型の最初の文字を大文字にする必要がありますが、C# では小文字または大文字にすることができます。また、Boolean 型もあります。Java では boolean、bool です。 C#で。

4.変数の命名: $ 記号は Java では使用できますが、C# では使用できません。 ####5.注: Java のドキュメント コメント「///」は C# より 1 つ少ないです。

6.出力: C# には 3 つの出力方法があります: Cosole.WriteLine(); Cosole.WriteLine (出力する値); Cosole.WriteLine ("書式文字列"、変数リスト); 最初の 2 つの使用法は system と同じです。 Java での出力 .println() メソッドの使用方法は同じですが、3 番目のメソッドはプレースホルダーに基づいて出力するため、Java よりも便利です。 ######7。制御フロー ステートメント: C# は Java に似ており、ケースの背後にコンテンツがある場合、C# のスイッチにはブレークが必要ですが、Java にはブレークは必要ありません。

8.配列: どちらの言語の宣言でも new キーワードが使用されます。 int a[]={1,2,3,5,5}; のように、配列の作成中に配列を初期化できますが、C# では、int a[]=new int[3 のように、Java よりも初期化が 2 つ多くあります。 ]{1, 2,3}; int a[]=new int[]{1,2,3};

9.メソッドで渡されるパラメータ: どちらの言語も値渡しと参照渡しを使用します。

C# 参照によって渡されるキーワードは ref と out で、ref は変更に焦点を当て、out は出力に焦点を当てます。 Java では、すべてのメソッドは値によって渡されます;

10。アクセス修飾子: C# のアクセス修飾子は基本的に Java のアクセス修飾子に対応しますが、追加の内部修飾子があります。つまり、C# には次の 5 種類のアクセシビリティがあります。

public: メンバーには任意のコードからアクセスできます。 protected: メンバーには派生クラスからのみアクセスできます。

internal: メンバーには同じアセンブリ内からのみアクセスできます。

protected: メンバーには、同じアセンブリ内の派生クラスからのみアクセスできます。

private: メンバーは現在のクラス内でのみアクセスできます。

11. C# には Final キーワードが存在しないため、クラスを派生させたくない場合は、sealed キーワードを使用してクラスをシールできます。

12.コレクション: どちらの言語にもコレクション ArrayList があり、キーによる値へのアクセスは Java では HashMap、C# では HashTable です。 C# は Java の複数ジェネリック コレクションである List や Dictionary よりも簡単で、開梱して梱包する必要がなく、より安全です。

13.継承: Java はキーワード extends を使用し、C# は ":" のみを使用します。親クラスのコンストラクター メソッドを呼び出すには、Java は super キーワードを使用しますが、C# は Base キーワードを使用します。

14.ポリモーフィズム: 抽象クラスと抽象メソッドはどちらの言語でも、abstract キーワードを使用します。 Java の別のクラスがこのメソッドを継承する場合は、このメソッドを直接オーバーライドできますが、C# では、キーワード override を追加して実装する必要があります。 C# には、ポリモーフィズムを実装するための仮想メソッドが Java よりも 1 つ多くあります。

15.インターフェース: これらはすべてキーワード「インターフェース」で定義され、Java はキーワード「implements」で実装され、C# は「:」で実装されます。 C# では、インターフェイス内のすべてのメソッドはデフォルトでパブリック メソッドです。 Java では、メソッド宣言に public 修飾子を含めることができます (これは必須ではありません)。しかし、C# では、インターフェイス メソッドに public 修飾子を明示的に指定することは違法です。

16. C# の is 演算子は Java の instanceof 演算子と同じで、どちらもオブジェクトのインスタンスが特定の型に属しているかどうかをテストするために使用できます。 Java には、C# の as 演算子に相当する演算子はありません。 as 演算子は is 演算子とよく似ていますが、より「積極的」です: 型が正しい場合、as 演算子はテスト対象のオブジェクト参照をターゲットの型に変換しようとします。そうでない場合は、変数参照を null に設定します。 。

17.列挙子は列挙型 (Java ではなし) であり、変数の値の型として使用されるため、変数の可能な値の範囲が列挙子に表示される値に制限されます。

18.構造体はクラスに非常に似ており、スタックに格納されるか埋め込まれた値型です。構造体はインターフェイスを実装し、クラスのようなメンバーを持つことができますが、構造体は継承をサポートしません。

19. C# はポインタを保持します。安全ではありません。 (C# はポインタを使用するのが安全ではありません。最後のポインタは検証する必要があります)

php 中国の Web サイト、多数の無料の

Java 入門チュートリアル

、オンラインで学ぶことを歓迎します。

以上が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)

H5とミニプログラムとアプリの違い H5とミニプログラムとアプリの違い Apr 06, 2025 am 10:42 AM

H5。ミニプログラムとアプリの主な違いは次のとおりです。技術アーキテクチャ:H5はWebテクノロジーに基づいており、ミニプログラムとアプリは独立したアプリケーションです。経験と機能:H5は軽量で使いやすく、機能が限られています。ミニプログラムは軽量で、インタラクティブが良好です。アプリは強力で、スムーズな経験があります。互換性:H5はクロスプラットフォーム互換性があり、アプレットとアプリはプラットフォームによって制限されています。開発コスト:H5には、開発コストが低く、中程度のミニプログラム、最高のアプリがあります。適用可能なシナリオ:H5は情報表示に適しており、アプレットは軽量アプリケーションに適しており、アプリは複雑な機能に適しています。

PSのエクスポートPDFのパスワード保護を設定する方法 PSのエクスポートPDFのパスワード保護を設定する方法 Apr 06, 2025 pm 04:45 PM

Photoshopでパスワードで保護されたPDFをエクスポート:画像ファイルを開きます。 [ファイル]&gtをクリックします。 「エクスポート」> 「PDFとしてのエクスポート」。 「セキュリティ」オプションを設定し、同じパスワードを2回入力します。 [エクスポート]をクリックして、PDFファイルを生成します。

XPathを使用して、JavaScriptの指定されたDOMノードから検索する方法は? XPathを使用して、JavaScriptの指定されたDOMノードから検索する方法は? Apr 04, 2025 pm 11:15 PM

JavaScriptのDOMノードの下でのXpath検索方法の詳細な説明、XPath式に基づいてDOMツリーから特定のノードを見つける必要があることがよくあります。あなたがする必要があるなら...

Routerフォルダーの下のindex.jsファイルでvue.use(vuerouter)を呼び出す必要があるのはなぜですか? Routerフォルダーの下のindex.jsファイルでvue.use(vuerouter)を呼び出す必要があるのはなぜですか? Apr 05, 2025 pm 01:03 PM

Vueアプリケーションを開発するときに、ルーターフォルダーの下にindex.jsファイルにvuerouterを登録する必要性があるため、ルーティング構成で問題が発生することがよくあります。特別...

console.logの出力結果の違い:同じ変数が異なる印刷方法を持っているが、結果が異なるのはなぜですか? console.logの出力結果の違い:同じ変数が異なる印刷方法を持っているが、結果が異なるのはなぜですか? Apr 04, 2025 am 11:48 AM

Console.log出力の違いについての詳細な議論は、この記事のログ出力で、Console.log関数の出力結果がコードの一部である理由を分析します。コードスニペットにはURLパラメーターの解像度が含まれます...

RXJを使用してストリーム要素を処理するときに出力がないのはなぜですか?オペレーターを正しく使用する方法は? RXJを使用してストリーム要素を処理するときに出力がないのはなぜですか?オペレーターを正しく使用する方法は? Apr 04, 2025 pm 06:36 PM

RXJを使用してRXJSを学習および使用するストリームの要素を動作させる場合の問題に関する議論...

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

SVGパスパラメーターの理解と適用:なぜ0 0の代わりにエンド座標-.1 0なのか、そして小文字aとzを使用することの違いは何ですか? SVGパスパラメーターの理解と適用:なぜ0 0の代わりにエンド座標-.1 0なのか、そして小文字aとzを使用することの違いは何ですか? Apr 05, 2025 pm 12:54 PM

学習SVG(ScalableVector ...の学習におけるSVGPATH PATHパラメーターの理解と適用

See all articles