今年も暖春の一年、今年の春は何か得られたかわかりませんが、とにかくたくさん得ました!
1年間働いた後、武漢で月給7,000から15,000の長沙のインターネット会社から飛び降りました.この間、上海と広州のいくつかのインターネット会社からもオファーを受けました.最終的に、妥協の末、最高の給与ではありませんが、996ではありません!
過去 2 か月間、私と同僚は大小さまざまな数百人の面接官を経験しましたが、最終的に、この春の採用で何かを得ることができなかったのは 3 〜 4 人だけでした。彼らはすべて5〜8kであり、テストに合格していない少数の同僚も非常にイライラしており、社内で締め出されています(春の採用前に、私は経験を理解しようとしていましたが、現在新人を募集していると聞いたようで、昇給はありません.news)、今年の秋のトリックで彼ら自身の黄金の果実を刈り取ることを誓いました!
一緒に会社に入社した同僚や卒業生として、成功裏に着陸した同僚は、過去2か月のインタビューで遭遇したいくつかの重要な知識ポイントを収集して整理せずにはいられません. ゴールドスリーとシルバーフォーは最近、「コレクションのコレクション」をリリースしました. Javaでの中級および上級面接の質問」.
面接の質問を要約し、一般的だが比較的単純な面接の質問をいくつか削除し、いくつかの新しい面接の質問を追加し、これらの面接の質問を 19 のモジュールに分割して、誰もが自分のスキルを簡単に比較できるようにしました。
対象範囲: Java Foundation、コンテナ、マルチスレッド、リフレクション、オブジェクトコピー、Java Web、例外、ネットワーク、デザインパターン、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM
モジュール 1: Java の基礎
- JDKとJREの違いは何ですか?
- == と equals の違いは何ですか?
- 2 つのオブジェクトの hashCode() が同じ場合、equals() も真でなければなりませんよね?
- Javaでのファイナルの役割は何ですか?
- Math.round(-1.5)はJavaで何と等しいですか?
- String は基になるデータ型の 1 つですか?
- javaで文字列を操作するためのクラスは何ですか? それらの違いは何ですか?
- String str="i" は String str=new String("i") と同じですか?
- 文字列を逆にする方法は?
- String クラスの一般的に使用されるメソッドは何ですか?
- 抽象クラスには抽象メソッドが必要ですか?
- 通常クラスと抽象クラスの違いは何ですか?
- 抽象クラスをファイナライズできますか?
- インターフェイスと抽象クラスの違いは何ですか?
- Javaには何種類のIOストリームがありますか?
- BIO、NIO、AIOの違いは何ですか?
- ファイルの一般的な方法は何ですか?
モジュール 2: コンテナー
- Java コンテナとは何ですか?
- Collection と Collections はどう違いますか?
- リスト、セット、マップの違いは何ですか?
- HashMap と Hashtable の違いは何ですか?
- HashMap または TreeMap の使用を決定する方法は?
- HashMap の実装原理について教えてください。
- HashSetの実装原理について教えてください。
- ArrayList と LinkedList の違いは何ですか?
- 配列とリストの間の変換を実現するには?
- ArrayList と Vector の違いは何ですか?
- Array と ArrayList の違いは何ですか?
- Queue の poll() と remove() の違いは何ですか?
- どのコレクション クラスがスレッド セーフですか?
- イテレータ イテレータとは?
- イテレータの使い方 特徴は何ですか?
- イテレータとリストイテレータの違いは何ですか?
モジュール 3: マルチスレッド
- 並列と同時の違いは何ですか?
- スレッドとプロセスの違いは?
- デーモンスレッドとは?
- スレッドを作成するにはどのような方法がありますか?
- 実行可能と呼び出し可能の違いは何ですか?
- スレッドにはどのような状態がありますか?
- sleep() と wait() の違いは何ですか?
- notify() と notifyAll() の違いは何ですか?
- スレッドの run() と start() の違いは何ですか?
- スレッドプールを作成するにはどのような方法がありますか?
- スレッドプールの状態は?
- スレッドプールの submit() メソッドと execute() メソッドの違いは何ですか?
- Javaプログラムでマルチスレッド操作の安全性を確保するには?
- マルチスレッド ロックのアップグレードの原則は何ですか?
- デッドロックとは?
- デッドロックを防ぐには?
- スレッドローカルとは? 使用シーンは?
- 同期の基本的な実装原理について教えてください。
- 同期と揮発の違いは何ですか?
- 同期とロックの違いは何ですか?
- 同期ロックと ReentrantLock の違いは何ですか?
- 原子の原理について教えてください。
モジュール 4: 反射
- リフレクションとは?
- Javaシリアライゼーションとは何ですか? シリアル化が必要な場合
- 動的プロキシとは何ですか? アプリケーションとは何ですか?
- 動的プロキシを実装するには?
モジュール 5: オブジェクトのコピー
- クローニングを使用する理由
- オブジェクトのクローンを作成するには?
- ディープコピーとシャローコピーの違いは何ですか?
モジュール 6: Java Web
- jspとサーブレットの違いは何ですか?
- jsp にはどのような組み込みオブジェクトがありますか? 機能は何ですか?
- jsp の 4 つのスコープについて教えてください。
- セッションとクッキーの違いは何ですか?
- セッションの動作原理について話しますか?
- クライアントが Cookie を禁止している場合でも、セッションを使用できますか?
- spring mvc と struts の違いは何ですか?
- SQLインジェクションを回避するには?
- XSS 攻撃とは何ですか?それを回避する方法は?
- CSRF攻撃とは何ですか?それを回避する方法は?
モジュール 7: 例外
- 投げる と 投げる はどう違いますか?
- final、finally、finalize はどう違いますか?
- try-catch-finally のどの部分を省略できますか?
- try-catch-finally で、catch にリターンがあった場合でも、finally は実行されますか?
- 一般的な例外クラスは何ですか?
モジュール 8: ネットワーキング
- http 応答コード 301 と 302 は何を表していますか? 違いは何ですか?
- 転送とリダイレクトの違いは?
- tcp と udp の違いを簡単に説明してください。
- なぜ tcp は 3 回握手しなければならないのに、2 回できないのでしょうか? なぜ?
- TCP スティッキー パケットの生成方法を教えてください。
- クロスドメインを達成するには?
- JSONPの実装原理について教えてください。
モジュール 9: デザイン パターン
- よく知っているデザインパターンを教えてください。
- 単純な工場と抽象工場の違いは何ですか?
モジュール 10: Spring / Spring MVC
- なぜスプリングを使用するのですか?
- aopとは何か説明してください。
- iocとは何か説明してください。
- 春の主なモジュールは何ですか?
- 春に一般的に使用される注入方法は何ですか?
- 春のBeanはスレッドセーフですか?
- spring はどのような Bean スコープをサポートしていますか?
- 春に豆を自動的に組み立てる方法は何ですか?
- 春の取引の実施方法は?
- 春のトランザクション分離について話しますか?
- spring mvc の実行プロセスについて教えてください。
- spring mvc のコンポーネントは何ですか?
- @RequestMapping の役割は何ですか?
- @Autowired は何をしますか?
モジュール 11: Spring Boot / Spring Cloud
- スプリングブーツとは?
- スプリングブーツを使用する理由
- スプリング ブート コア構成ファイルとは何ですか?
- スプリング ブート構成ファイルの種類は何ですか? 違いは何ですか?
- ホットデプロイメントを実現するためのスプリングブートの方法は何ですか?
- jpaと休止状態の違いは何ですか?
- 春雲とは?
- 春雲サーキットブレーカーの役割とは?
- スプリング クラウドのコア コンポーネントは何ですか?
モジュール 12: 休止状態
- 休止状態を使用する理由
- ORM フレームワークとは
- 休止状態でコンソールに印刷されたSQLステートメントを表示するには?
- 休止状態にはいくつのクエリ メソッドがありますか?
- 休止状態のエンティティ クラスを final として定義できますか?
- hibernateでのマッピングにIntegerとintを使用することの違いは何ですか?
- 休止状態はどのように機能しますか?
- get() と load() の違いは何ですか?
- ハイバネートのキャッシングメカニズムについて教えてください。
- 休止状態のオブジェクトにはどのような状態がありますか?
- 休止状態での getCurrentSession と openSession の違いは何ですか?
- 休止状態のエンティティ クラスには、パラメーターのないコンストラクターが必要ですか? なぜ?
モジュール 13: Mybatis
- mybatis の #{} と ${} の違いは何ですか?
- mybatis にはいくつのページング方法がありますか?
- mybatis の論理ページングと物理ページングの違いは何ですか?
- mybatis は遅延読み込みをサポートしていますか? 遅延読み込みの原則とは何ですか?
- mybatisの一次キャッシュと二次キャッシュについて教えてください。
- mybatis と hibernate の違いは何ですか?
- mybatis にはどのようなエグゼキューター (Executor) がありますか?
- mybatis ページング プラグインの実装原理は何ですか?
- mybatis はどのようにカスタム プラグインを作成しますか?
モジュール 14: RabbitMQ
- rabbitmq の使用シナリオは何ですか?
- rabbitmq の重要な役割は何ですか?
- rabbitmq の重要なコンポーネントは何ですか?
- rabbitmq での vhost の役割は何ですか?
- rabbitmq メッセージはどのように送信されますか?
- rabbitmq はメッセージの安定性をどのように保証しますか?
- rabbitmq はメッセージの損失をどのように回避しますか?
- メッセージの持続性を確実に成功させるための条件は何ですか?
- rabbitmq 永続化の欠点は何ですか?
- rabbitmq にはいくつのブロードキャスト タイプがありますか?
- rabbitmq はどのように遅延メッセージ キューを実装しますか?
- rabbitmq クラスターの用途は何ですか?
- rabbitmq ノードのタイプは何ですか?
- rabbitmq クラスターを構築する際に注意すべき点は何ですか?
- 各 rabbitmq ノードは他のノードの完全なコピーですか? なぜ?
- rabbitmq クラスター内の唯一のディスク ノードがクラッシュした場合はどうなりますか?
- rabbitmq には、クラスター ノードの停止順序に関する要件はありますか?
モジュール 15: カフカ
- 飼育係とは別にカフカを使用できますか? なぜ?
- カフカにはいくつのデータ保持戦略がありますか?
- Kafka は、7 日間と 10G のデータを同時にクリアするように設定されています.5 日目までに、メッセージは 10G に達しました.この時点で Kafka はどのように処理しますか?
- カフカの実行が遅くなる原因は何ですか?
- Kafka クラスターを使用する際の注意事項は?
モジュール 16: 飼育係
- 飼育係とは?
- Zookeeper にはどのような機能がありますか?
- Zookeeper にはいくつの展開モードがありますか?
- Zookeeper は、マスター ノードとスレーブ ノードの状態の同期をどのように保証しますか?
- クラスターにマスター ノードがあるのはなぜですか?
- クラスタ内に 3 台のサーバーがあり、ノードの 1 つがダウンしています.この時点で Zookeeper を引き続き使用できますか?
- Zookeeper の通知メカニズムについて教えてください。
モジュール 17: MySql
- データベースの 3 つの正規形は何ですか?
- 自動インクリメント テーブルには合計 7 個のデータがあり、最後の 2 個のデータを削除し、mysql データベースを再起動して、別のデータを挿入します。このときの ID は何ですか?
- 現在のデータベースのバージョンを取得するには?
- ACIDとは何か教えてください。
- char と varchar の違いは何ですか?
- float と double の違いは何ですか?
- mysqlの内部結合、左結合、右結合の違いは何ですか?
- mysql インデックスはどのように実装されていますか?
- mysql インデックスが要件を満たしているかどうかを確認するにはどうすればよいですか?
- データベース トランザクションの分離について話しますか?
- mysql で一般的に使用されるエンジンについて教えてください。
- mysql の行ロックとテーブル ロックについて教えてください。
- 楽観的ロックと悲観的ロックについて話しますか?
- mysql の問題をトラブルシューティングする方法は何ですか?
- mysql のパフォーマンス最適化を行うには?
モジュール 18: Redis
- レディスとは?使用シーンは?
- redisの機能は何ですか?
- redis と memecache の違いは何ですか?
- なぜredisはシングルスレッドなのですか?
- キャッシュ侵入とは何ですか? それに対処する方法は?
- redis はどのようなデータ型をサポートしていますか?
- redis でサポートされている Java クライアントは何ですか?
- ジェディスとレディソンの違いは何ですか?
- キャッシュとデータベースのデータの一貫性を確保するにはどうすればよいですか?
- redis はいくつの方法で永続化されますか?
- redis はどのように分散ロックを実装しますか?
- redis 分散ロックの欠点は何ですか?
- redis はどのようにメモリを最適化しますか?
- Redis の排除戦略とは何ですか?
- redis の一般的なパフォーマンスの問題は何ですか? それを解決する方法は?
モジュール 19: JVM
- jvm の主なコンポーネントについて教えてください。とその役割は?
- jvm ランタイム データ領域について教えてください。
- スタックの違いについて話しますか?
- キューとスタックとは何ですか? 違いは何ですか?
- 親の委任モデルとは何ですか?
- クラスローディングの実行過程を教えてください。
- 対象物がリサイクルできるかどうかをどのように判断しますか?
- javaの参照型とは何ですか?
- jvm のガベージ コレクション アルゴリズムを教えてください。
- jvm にあるガベージ コレクタを教えてください。
- CMS ガベージ コレクタについて教えてください。
- 新世代ガベージコレクタと旧世代ガベージコレクタとは何ですか? 違いは何ですか?
- 世代別ガベージ コレクタの仕組みを簡単に説明してください。
- jvm チューニング ツールについて教えてください。
- 一般的に使用される jvm チューニング パラメータは何ですか?
最後に書く
私が言いたいのは、失敗するために生まれてくる人はいないということです。失敗しても構わないと思っている人だけです。向こうから火を見てきた 何もしなければ成功できない 一生普通のサラリーマンでしかない 35歳(もしかしたら35歳じゃないかもしれない)古い)、私はビーチで若い世代に射殺されましたが、その後はどうなりますか? Didi のドライバーになるには?食べ物を届けるため?そんな自分を受け入れられますか?年収 20w-80w から月収 2k まで受け入れられますか?
誰もそうしないと思います!
したがって、私たち技術者がインターネットの潮流にしっかりと足を踏み入れるには、技術の向上が鍵となります. あなたの技術さえあれば、35歳の中年の危機はあなたには関係ありません. Ali P8 が何を持っているか見てみましょう。
もしあなたが将来、自分自身を打ち破り、大きな工場の夢を実現したいのであれば、上記の「金・三・四・新発売『Java中級・上級面接質問集』」を読んでみるといいかもしれません。あなたのキャリア開発を支援します。