市場には Java 学習本がたくさんあります。ほとんどの本は Java の最も基本的な部分を説明しています。一部の少し非公式な本には間違った内容が含まれている場合もあります。また、インターネット上にはさまざまな種類の奇妙な Java インタビューもあります。質問は Java の基本に焦点を当てています。実際、上級 Java 開発エンジニアに応募する場合、これらの基本的な知識だけでは十分ではありません。さらに、アルゴリズム、データ構造、オペレーティング システムなどを理解する必要があります。内容が多岐にわたるため、具体的な技術については説明しませんが、企業の上級Java開発エンジニアを採用するための面接の質問をまとめました。
1. Java の基礎
1. オブジェクト指向の基本的な考え方をマスターし、深く理解する
カプセル化、継承、ポリモーフィズムの関連テクノロジーをマスターして理解する
2. O
バイトストリームFileInputStream、FileOutputStreamと文字ストリームFileWriter、OutputStreamWriterをマスターして上手に使いましょう
ファイルタイプの構築、取得、作成、削除をマスターしましょう
マルチスレッド
スレッドタイプをマスターしましょう
3.マルチスレッドプログラムの動作と同時実行の原則
4、例外
例外の動作原理をマスターし、例外の処理をマスターする
2. Java仮想マシン
1. JVMメモリ領域の分割
JVMメモリパラメータをマスターする設定とチューニング
プログラムカウンター、ヒープ、仮想マシンをマスターする スタック、ローカルメソッドスタック、メソッドエリア(Java8で削除)、メタスペース(Java8で新規)の機能と基本原理をマスターする
2.クラスのロード段階: ロード、リンク (検証、準備、解析) ) 初期化、使用、アンインストール。
クラスローダーとそのアプリケーションクラスローダー、カスタムローダーの分類をマスターします。
3. J2EE
サーブレットの組み込みオブジェクト、アクション、関連する特性と動作原理をマスターする
Spring フレームワークの IOC および AOP 実装原則 (リフレクションと動的プロキシ) をマスターする
at の動作原理をマスターする少なくとも 1 つの MVC フレームワーク (Spring MVC) を用意し、それを上手に使いましょう。
4. データ構造とアルゴリズム
線形テーブルとツリーの特性をマスターし、それらを巧みに使用します
一般的なソートと検索アルゴリズムをマスターします: 挿入ソート (ヒル ソート)、選択ソート (ヒープ ソート)、交換ソート (バブル ソート) ) ソート) 逐次検索、バイナリ検索、ハッシュ検索
プログラミングの問題を解決するためのソートと検索のアイデアの使用に習熟する
5. データベース
SQL ステートメントの作成をマスターする
データベースの最適化 (SQL レベルとテーブルをマスターする)設計レベル)
少なくとも 1 つのデータベース製品をマスターする
高い同時実行性とビッグデータの状況下でのデータベース開発に精通している。
6. Web テクノロジー
AJAX の動作原理をマスターします。
少なくとも 1 つの JS フレームワーク (JQuery など) に精通している
7. Linux
一般的な Linux コマンドの使用に精通している
Linux オペレーティング システムの基本概念と機能に精通している
8. 正規表現一般的な正規表現をマスターしましょう