一つだけはっきりさせておきたい。これはどちらが優れているかという問題ではなく、その部分については他の人に議論を任せます。私はそれを気にしません。就職の面接でこの質問をされたので、もう少し学ぶと役に立つかもしれないと思いました.
これらは私が思いつくことができるものです:
- Java は「プラットフォーム非依存」です。最近ではMonoプロジェクトがあると言えますので、C# も考えられますが、それは少し誇張されていると思います。なんで?Java の新しいリリースが完了すると、それがサポートするすべてのプラットフォームで同時に利用できるようになりますが、Mono の実装にはまだ C# 3.0 の機能がいくつ欠けているのでしょうか? それとも、ここで比較するのは本当にCLRとJREのどちらなのでしょうか?
- Java はイベントとデリゲートをサポートしていません。私の知る限りでは。
- Java では、すべてのメソッドが仮想です
- 開発ツール: Visual Studio のようなツールはまだないと思います。特に、チーム エディションを使用したことがある場合は、私の言いたいことがわかるでしょう。
関連すると思われる他のものを追加してください。
更新: ふと思いついたのですが、Java にはクラスやメソッドなどのカスタム属性のようなものはありません。