問題タブ [java-10]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
144 参照

java - Java 10 'var' は、完全な再構築なしでバグを生成します

以下の例を参照してください。

==== 前 ====

---- A.java ---

--- B.java

====後====

---- A.java ---

--- B.java

A.java が変更されましたが、B.java ソース ファイルに変更はありません。B.class ファイルの情報にある「userAccounts」変数の型は「OldUserAccounts」ですよね。変更したソース ファイルを実サーバーに適用した場合。「var」はバグを生成しますか?

注 : var の変更がなくても、バイトコードと互換性がない可能性があるため、それが悪い習慣であることはわかっています。私の場合、プロジェクト全体を再構築するという考えは良くありません。コストがかかりすぎる

アイデアや回避策はありますか??

0 投票する
2 に答える
1651 参照

java - IDEA で明示的な型を var に変換する

次のコードを含む Java 10 プロジェクトがあります。

カーソルを置いてMap...を押すAlt+Enterと、「明示的な型を次のものに置き換える」というオプションがあるはずvarです。ただし、このオプションは私のメニューにはありません。

このオプションを有効にする方法は? いくつかのキャッシュなどを消去する必要がありますか?

IDEA 2018.1.1 EAP を使用しています。

0 投票する
2 に答える
172 参照

java - JShell で実行中の同じステートメントの異なる動作

私は2つのクラスの参照を相互に保存する問題に取り組んでいました

例えば:

上記の初期化の代わりに、以下のステートメントを使用すると:

私は非常に明白な以下のエラーを得ました:

しかし、JShellで同じことを試してみると、問題なく動作します(初期化されていないことを念のために確認するために、以前に初期化されていないことを確認するステートメントを実行する直前variable aにチェックしました:variable a

ここに画像の説明を入力

ここで何かが足りないかもしれませんが、JAVA で実行されている同じステートメントの 2 つの異なる動作がある理由を理解するのを手伝ってくれませんか。

この問題を理解する簡単な方法は、以下のステートメントは通常のプログラムでは許可されていますJshellが、通常のプログラムでは許可されていないということです。

0 投票する
1 に答える
366 参照

java - jdk.incubator.httpclient の NullPointerException

JDK10 の新しい光沢のある httpclient を新たに使用しようとしています。コードはとてもシンプルです。複数のスレッドから同期 HTTP 呼び出しを使用します。

ときどき NPE を取得します。

私のコードに問題はありますか? この例外の理由は何ですか?