Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のJShellのフォワードリファレンスとは何ですか?


JShell コマンドラインです ツール これにより、Javaステートメント(単純ステートメント、複合ステートメント、または完全なメソッドとクラス)を入力し、それを評価して結果を出力できます。

転送 参照 メソッドを参照するコマンドです 、変数 、またはクラス これは、JShellで入力したコードには存在しません。コードがJShellに順番に入力されて評価されると、これらのフォワード 参照 一時的に未解決です。 JShellは、メソッドで前方参照をサポートします ボディ返品 タイプパラメータ タイプ変数 タイプ 、および a クラス

以下のコードスニペットで、メソッド forwardReference()を作成しました Jshellで。このメソッドは、変数が宣言されるまで呼び出すことができません。このメソッドを呼び出そうとすると、警告メッセージがスローされます。「変数notYetDeclaredが宣言されるまで呼び出せないメソッドforwardReference()を呼び出そうとしました "

C:\Users\User>jshell
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro

jshell> void forwardReference() {
...>       System.out.println(notYetDeclared);
...>    }
| created method forwardReference(), however, it cannot be invoked until variable notYetDeclared is declared

jshell> forwardReference()
| attempted to call method forwardReference() which cannot be invoked until variable notYetDeclared is declared


以下のコードスニペットでは、「 notYetDeclared」を宣言しています。 "文字列を返す変数。最後に、 forwardReference()を呼び出すと JShellでは、「変数が宣言されています」を出力します。 。

jshell> String notYetDeclared = "variable is declared"
notYetDeclared ==> "variable is declared"

jshell> forwardReference()
variable is declared

  1. Java9のJShellのさまざまな/editコマンドは何ですか?

    JShell Java 9で導入されたコマンドラインツールです main()なしで宣言、ステートメント、および式を評価します 方法。 JShellは、 JShell Edit Padというテキストエディタを設定できます。 、コードを非常に簡単に変更でき、「 / edit」を使用して起動できます コマンド。 以下は、さまざまな「/編集」です。 Jshellで使用されるコマンド。 /edit /edit [ID] /edit [Code_Name] /編集: このコマンドは引数なしで使用できます。「/edit」コマンドは、テキストエディタにすべてのアクティブなコードを表示します。

  2. JavaのStringIndexOutOfBoundsExceptionとは何ですか?

    文字列は、Javaで文字のシーケンスを格納するために使用され、オブジェクトとして扱われます。 java.langパッケージのStringクラスは、文字列を表します。 文字列は、(他のオブジェクトのように)新しいキーワードを使用するか、(他のプリミティブデータ型のように)リテラルに値を割り当てることによって作成できます。 String stringObject = new String("Hello how are you"); String stringLiteral = "Welcome to Tutorialspoint"; 文字列には文字の配列