Javaの大きな特徴の1つは、Javaアプリケーションを作成し、ライブラリを使用しない限り、Windows、Linux、Macなどで実行できるという意味でプラットフォームに依存しないことです。 1つのOSに固有であり、適切なOSが正しく解釈するためにJVMがインストールされている限り...
ただし、携帯電話に特定のJVMがインストールされていて、正しく解釈できるのに、通常のコンピューターJavaプログラム(Javaの単純なHello Worldのように、WindowsやLinuxなど)が携帯電話でまったく同じように実行できないのはなぜですか。 ?
Android開発など、場合によってはプログラムのアーキテクチャを変更したり、Java MEを使用して一部の一般的な携帯電話に固有のアプリケーションを作成したりする必要があるのはなぜですか?
OSの特定の機能に関連する機能がいくつかあることは知っています。たとえば、コンソールや入力メソッドなどに関連する機能など、モバイルプラットフォームには適用されない可能性がありますが、これが唯一の理由です。それは物事を互換性のないものにしますか?もしそうなら、整数変数を宣言して初期化するだけの単純なアプリケーションが、JVMが利用可能なすべての非モバイルおよびモバイルプラットフォームで実行できないのはなぜですか?
このような以前に投稿された他の質問を知っていますが、それは私がここで目指している正確なポイントに焦点を当てていません。