問題タブ [ocpjp]

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 投票する
3 に答える
212 参照

java - なぜリストnewList = 新しい配列リスト() はタイプ セーフに違反していますか?

重複の可能性:
List<Dog> は List<Animal> のサブクラスですか? Java のジェネリックが暗黙のうちにポリモーフィックではないのはなぜですか?

これらのクラスを宣言しました:

と:

しかし、これらの Java ソース コードをコンパイルしようとすると、次のコンパイル エラーが表示されます。

私の質問は次のとおりです。なぜその変換ができないのですか? タイプセーフルールに違反していますか?または?

ご回答ありがとうございます。

0 投票する
4 に答える
5665 参照

java - Java SneakyThrow の例外、型消去

誰かがこのコードを説明できますか?

奇妙に思えるかもしれませんが、これはキャスト例外を生成せず、署名で宣言することなくチェック例外をスローしたり、チェックされていない例外にラップしたりすることを許可します。

どちらもsneakyThrow(...)メインもチェック例外を宣言していませんが、出力は次のようになります。

このハックは Lombok で使用され、注釈 @SneakyThrow を使用して、チェック済みの例外を宣言せずにスローできるようにします。


型消去と関係があることは知っていますが、ハックのすべての部分を理解しているかどうかはわかりません。


編集: を挿入できることIntegerList<String>およびチェックされた/チェックされていない例外の区別がコンパイル時の機能であることを知っています。

コンパイラのListような非ジェネリック型からジェネリック型にキャストすると、警告が生成されます。ただし、上記のコードのList<XXX>ようにジェネリック型に直接キャストすることはあまり一般的ではありません。(T) ex

必要に応じて、私にとって奇妙に思える部分は、JVM 内で aList<Dog>List<Cat>同じように見えることを理解していることですが、上記のコードは、最終的に型 Cat の値を型 Dog または型の変数に割り当てることもできることを意味しているようですそんな感じ。

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

java - ファイルシステムとファイルシステムの関係は何ですか? (ジャワ)

この2クラスの関係は?詳しくは、FileSystem クラスで getPathMatcher メソッドを使用するにはどうすればよいですか? これらの2つのクラスの間で誰かが私にいくつかの明確さを与えることができますか? よろしくお願いします。

0 投票する
5 に答える
1057 参照

java - AtomicLongFieldUpdate クラスの実際の使用と説明

クラスAtomicLongFieldUpdateの実際の使用を知っている人はいますか? 説明を読みましたが、意味がよくわかりませんでした。なぜ私はそれを知りたいのですか?好奇心とOCPJPの準備のため。

前もって感謝します。

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

java - java.sql.SQLException: 適切なドライバーが見つかりません

DbConnector を使用して DriverManager から接続を取得する以下の DbQuery.java クラスを使用して、簡単なクエリを実行しようとしています。

:

  1. export CLASSPATH=$CLASSPATH:/home/me/ocpjp/chapter-10/mysql-connector-java-5.1.25 を介して、クラスパスに「mysql-connector-java-5.1.25-bin.jar」を既に含めています。 /mysql-connector-java-5.1.25-bin.jar
  2. 問題があれば、「mysql -uroot -ptcial addressBook」で mysql に接続できます。
  3. また、「-cp」引数を使用して実行しようとしましたが、役に立ちませんでした。
  4. #3 DbConnect.java クラスに「データベース接続が確立されました」と表示させることができます。
  5. また、#4 DbQueryWorking.java には問題がなく、期待どおりの出力が得られます。

ここで何が問題なのかを理解するのを手伝ってもらえますか?

1) DbConnector.java

2) DbQuery.java

3) DbConnect.java

4) DbQueryWorking.java

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

java - このポリモーフィック参照変数の説明を手伝ってくれる人はいますか?

コードは次のとおりです。

説明してください A a=new B(); によってアクセス可能な変数とメソッドは何ですか? この手法はポリモーフィック参照権と呼ばれますが、継承の影響下でどのように機能するのでしょうか?

0 投票する
3 に答える
273 参照

java - Javaプログラミングにおける結束力に関するお問い合わせ

次のコードをどのように定義しますか?

a) 高い凝集力

b) 低凝集性

takeAndGlue()2 つの別々のメソッドで呼び出される 2 つのことを行う場合でも、High と言うでしょう。したがって、stackTrace追跡可能です。