1. 簡単に自己紹介をしてください。あなたのプロジェクトについて教えてください。
2. メモリ リークに遭遇したことがありますか?どうやって解決しましたか?私は少し前に一度これに遭遇しました、そして私はかなり幸運でした。
3. Java の基本的なタイプは何ですか? String は Java の基本的な型ですか?なぜ String は Final 型でなければならないのでしょうか?
4. リフレクション メカニズムの基礎となる実装は何ですか?ダイナミクスについてはどうですか?動的実装の原則?
5. HashMap
を理解していますか? HashMap
に関連することを教えてください。 HashMap
はスレッドセーフですか?なぜスレッドセーフなのか? ConcurentHashMap
理解できましたか?彼はどのようにしてスレッドの安全性を達成しているのでしょうか? 1.8 は CAS
に基づいていると今言いましたか? CAS
の ABA 問題を解決するにはどうすればよいですか?
6. JVM のスレッド モデルについて教えてください。これらの領域は何に使用されますか? Java
スレッド モデルと JVM
スレッド モデルの区別と概要に注意してください。インターネット上の多くの記事は間違っています。
7. Java クラス ローダーの動作メカニズムについて教えてください。クラスロードはどの領域で行われますか?
8. Java のスレッド モデルについて話しましょうか?違反ってわかりますか?彼の論理的根拠は何でしょうか?違反スレッドは安全ですか?なぜだめですか?
9. スレッドの安全性を確保するための解決策は何ですか?読み取り/書き込みロックについて話しましょう。読み取り/書き込みロックとは何ですか? 10. データベース インデックスにはどのような種類がありますか?インデックス作成に B ツリーを使用する理由は何ですか?複合インデックスと複数の個別インデックスの違いは何ですか?データベースにおける大規模なテーブル クエリの最適化について理解していますか?
MVCC 仕組みは理解できましたか? MVCC メカニズムの何が問題なのでしょうか?この問題を解決するにはどうすればよいでしょうか? MySQLmysql
遅いステートメントのチューニングを行ったことがありますか?どうやってやったのか教えてください。 11.
について理解していますか? Redis
を使用して分散ロックを実装する方法を教えていただけますか? 12.
の Bean のスコープと Spring MVC
の controller
はスレッドセーフですか?スレッドの安全性を確保するにはどうすればよいですか? (インタビューはネチズンからのものです: 職歴 2 年、シャンルヤル)
上記の質問を読んだ後、あなたはどれくらいうまく答えることができると思いますか? 100
スコア システムに従って、あなたは何点を自分に与えますか?
1. 自己紹介とプロジェクトについて簡単に話してください。
質問は 2 つあり、1 つは自己紹介、もう 1 つはプロジェクトの紹介です。プロジェクトの紹介は、あなたが最もよく知っている質問、または最もよく活用できる質問です。必ずしもそうとは限りません。あなたが最近取り組んでいるプロジェクトです。
2. メモリ リークに遭遇したことがありますか?どうやって解決しましたか?私は少し前に一度これに遭遇しました、そして私はかなり幸運でした。
この問題は毎日のサマリーに基づいています。これまでにこの問題に遭遇したことがない場合は、自分でシミュレーションし、さまざまなコマンドやツールを使用してトラブルシューティングを行うことができます。面接中に質問された場合は、トラブルシューティングのアイデアと、トラブルシューティング プロセスで使用されるコマンドとツールについて簡単に話してください。
3. Java の基本的なタイプは何ですか? String は Java の基本型ですか?なぜ String は Final 型でなければならないのでしょうか?
最初の 2 つの質問は調査に基づいています。3 番目の質問は自分自身を反映する必要があります。なぜ最終型に設定する必要があるのでしょうか。最終的な変更がどのような特性を持つのかを考える必要があります。クラスにはありますか?ここではどのような役割を果たしているのでしょうか?
4. リフレクション メカニズムの基礎となる実装は何ですか?ダイナミクスについてはどうですか?動的実装の原則?
これは、力学や力学と反射の関係に焦点を当てた基礎知識がしっかりしているかどうかを問う試験とも言えます。
5. HashMap
を理解していますか? HashMap
に関連することを教えてください。 HashMap はスレッドセーフですか?なぜスレッドセーフなのか? 同時ハッシュマップ
理解できましたか?彼はどのようにしてスレッドの安全性を達成しているのでしょうか? 1.8 は CAS に基づいていると今言いましたか? CAS の ABA 問題を解決するにはどうすればよいですか?
6. JVM のスレッド モデルについて教えてください。これらの領域は何に使用されますか? Java スレッド モデルと JVM スレッド モデルの違いに注意してください。要約すると、インターネット上の多くの記事は間違っています。これらはいくつかの質問です。#
##HashMap
- HashMap とは何かを教えてください。
#最下層の実装にはどのようなデータ構造が使用されていますか?- ##put プロセスについて教えていただくのが最善です
# #JDK のバージョンごとにどうなっているのでしょうか? HashMap がスレッドセーフでないのはなぜですか? - 同時ハッシュマップ
質問
コンカレントハッシュマップ
それは何ですか?ConcurrentHashMap
基礎となるデータ構造は何ですか?JDK
バージョンの違い、ConcurrentHashMap
の設計の違いは何ですか# CAS
質問この質問を読むことさえ考えないでください。多くの人はこの質問に夢中になっています。 。面接の質問を暗記し、少し理解すれば、これらの問題に対処できます。
CAS
とは何ですか?#CAS 問題は何ですか
ABA 問題は何ですか
ABA 問題の解決方法
Java私たちが調査するのは JVM メモリ モデルであり、通常は JVM ランタイム データ領域も含まれます。ここで Java メモリ モデルを持ち込んではいけないことに注意してください。Java メモリ モデルは JMM と呼ばれます。
JVM ランタイム データ領域に関しては、スレッド プライベートとスレッド共有について言及します。
特に Java 仮想マシンのスタック、ヒープ、メソッド領域、これら 3 つを明確に説明する必要があります。
スタックとスレッドの関係は何ですか?スタックには何が保存されますか?なぜSOFなのか?
ヒープはオブジェクトのメモリ割り当てに関連しているため、オブジェクトのライフサイクルについては必ず説明します。次に、クラスがどのように JVM にロードされるかについて説明します。 オブジェクトが死んでいるかどうかを判断するにはどうすればよいですか? ガベージ コレクション アルゴリズムとは何なのかについても説明します。 ガベージ コレクターとは何ですか? 最新のガベージ コレクターとは何ですか? 特徴は何ですか? あなたはどのような JVM チューニング パラメータに精通していますか?
この質問は多くの人が不合格になります。私もオンラインで多くの人と模擬面接をしましたが、JVM に関しては 90% が不合格です。
7.
クラス ローダーの動作メカニズムについて教えてください。クラスロードはどの領域で行われますか?
.classファイルから
Class にどのように移行するかを知っていることを示しています。 object
、次に実際のexample
プロセスに進み、どれだけ慣れているかを確認しますこれらの質問は、コードの各行をどのように実行するかという側面からフィードバックすることもできます。 、そしてどのような問題が発生するでしょうか? 何かを知ってください。
8. Java のスレッド モデルについて話しましょう?揮発性ってわかりますか?彼の論理的根拠は何でしょうか?違反スレッドは安全ですか?なぜだめですか?
Java スレッド モデルに精通している必要があり、可視性、再配置防止、アトミック性などの volatile の特性についても理解する必要があります。これらも理解する必要があります。
この質問は比較的理論的なもので、基本的には面接の質問を暗記すれば解けます。
9. スレッドの安全性を確保するための解決策は何ですか?読み取り/書き込みロックについて話しましょう。読み取り/書き込みロックの read
はすべて理論上のものです。面接の質問を暗記することで解決できます。以前に使用したことがある必要はありません。準備をしてください
10. データベースにはどのような種類のインデックスがありますか?インデックス作成に B ツリーを使用する理由は何ですか?複合インデックスと複数の個別インデックスの違いは何ですか?データベースにおける大規模なテーブル クエリの最適化について理解していますか? MVCC
仕組みは理解できましたか? MVCC
メカニズムの何が問題なのでしょうか?この問題を解決するにはどうすればよいでしょうか? MySQL
遅いステートメントのチューニングを行ったことがありますか?どうやってやったのか教えてください。
これは、
MySQL
データベースの 8 つの連続した質問に相当します。8 つの連続した質問のうち、いくつ答えることができますか?基本的には、面接体験談をもっと読み、面接の質問を暗記して対応することが多いです。
11. Redis
について理解していますか? Redis
を使用して分散ロックを実装する方法を教えていただけますか?
この質問は実際には単純に見えますが、答えはそれほど単純ではありません。
ここには単純な
setnx
、LUA スクリプトだけではなく、多くの社会的な要素が含まれています。
Redis
クラスター モード、ビジネス タイムアウトなどの問題を解決できます。面接官があなたのために用意してくれたものです。これには実際の資料が必要です。面接の質問を暗記しても、表面的な面接官にしか対処できません。より真剣な面接官に出会った場合は、自分自身の実際の資料を使って質問に答える必要があります。
12. Spring
の Bean
のスコープと Spring MVC
の controller
はスレッドです。安全。 ?スレッドの安全性を確保するにはどうすればよいですか?
主要な公開アカウントと私の公開アカウントが以前に同様の記事を投稿しているため、この質問については から まではありません。時間があるので、この質問を過小評価しないでください。公的アカウントの重要性。 車の中、地下鉄の中、または職場で休憩しているとき、ちょっとした時間を利用して技術的な公式記事を読んで、自分の知識を蓄積することができます。
正直に言うと、上記の質問の 90% はクリアできます。面接の質問を暗記して解決する 解決する前に実際に経験する必要がある質問がいくつかあるかもしれません。
しかし、私は常に次のことを信じています: 職務経験が 5 年未満であれば、面接は基本的に面接の質問を暗記することで解決できます。
以上が美団さん、答えられるか試してみませんか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。