0

私の問題の一部は、これを何と呼べばいいのかわからないため、タイトルに「インライン宣言」を引用符で囲みました。私はJavaとプログラミング全般に非常に慣れていないため、「インライン宣言」というフレーズは、私が話していることをGoogleや他の検索エンジンに説明するのに最も近いものであり、答えが見つかりません. 私が知っている限りでは、それはまったく「宣言」ではありません (ただし、宣言、インスタンス化、および初期化の違いを調べたので、そうだと思います)。ここで私が言いたいことを実際に説明できるようになることを願っています。

つまり、Java でオブジェクトを宣言し、それを個別に初期化すると、次のようになります。

    BufferedImage buffImg;
    buffImg = ImageIO.read("MyImage.jpg");

次に、Eclipse はオブジェクト名 (この場合は buffImg) を特別な色に変え、それをアウトラインに追加し、通常はオブジェクトのように扱います。キーワード、文字列、コメントでも同じことができます...おわかりでしょう。

しかし、「インライン宣言」を行うと、次のように、オブジェクトの宣言、インスタンス化、および初期化をすべて 1 行で行います。

    BufferedImage buffImg = ImageIO.read("MyImage.jpg");

次に、Eclipse はそれを特別な色に変えたり、アウトラインに追加したりせず、通常、ランダムで特別でない単語のように扱いますが、1 つの例外があります。 .

私の質問は次のとおりです。

  1. この種の「オール オン ワン ライン」宣言を何と呼んでいますか。将来、Google にどのような言葉を追加する必要があるかがわかります。
  2. Eclipseに認識させるにはどうすればよいですか?

ありがとうございました!

4

2 に答える 2

1

1.-単一ステートメントの宣言と初期化に特別な言葉はありません。これは、Javaで変数を初期化する一般的な方法です。

2.- あなたの混乱は、フィールドとローカル変数に起因する可能性があると思います。使用する初期化の種類に関係なく、フィールドは Eclipse によって強調表示されますが、ローカル変数は強調表示されません。また、フィールドは常にアウトラインに表示され、ローカル変数は表示されません。

Eclipse でのローカル変数の認識については、SO: Show All Local Variables in Eclipseのこの回答を参照してください。また、ローカル変数とフィールドの詳細については、Java チュートリアル: 変数を参照してください。

フィールドはアウトライン ローカル変数にありません。

よろしく!

于 2012-06-26T22:59:19.073 に答える
0

メソッド内で最初の例を実行している場合は、おそらく警告として Outline に buffImg を追加しています。非常に短い時間ではありますが、初期化せずにそのままにしておきます。ベスト プラクティスは、オールインワンの宣言と初期化を 1 行で行うことです。ローカル変数をすぐに設定できない場合は、null に初期化してから、後で再割り当てします。

于 2012-06-26T22:31:33.010 に答える