前に書く
Java開発者として、キャリアプランニングは非常に重要な要素です。1年、3年、5年、10年はハードルです。温水でカエルを沸騰させ続けると、それについて考える必要はありません。良い開発はありません。もちろん、どこへ行っても、大昌もあなたがいなくて寂しいです。プログラマーのテクノロジースタックの予備力は非常に重要であり、理論的な知識だけを持っているわけではありません。理論と実践を組み合わせるには、各セクションに対応する体系的な知識システムが必要です。
そして近年、ジャワ開発のポジション争いも熾烈を極めています。結局、このポジションは出生を気にせず、多くの人の福音です。自らの努力で高給を得て、白と金持ちの勝利と結婚の道へと進むことができます。はい、ハハO(∩_∩)O!(肌をとってください)しかし、最近のゴールデンナインとシルバーテンと2021ゴールデンスリーとシルバーフォーのJavaインタビューは非常に難しく、ますます難しくなっています。多くの人がこの種の質問をするでしょう。インタビューを求めない限り勉強しません。私は働いています。私を必要としないのなら、メンタリティを知る必要はありません。各知識ポイントの予備は合理的です。尋ねないのなら、それはできないという意味ではありません。必要がなければ、学ぶ必要はありません。 、他の人が知っていることを熟知し、他の人が何を使用するかを知ってください。この方法でのみ、給与を上げたり転職したりしても、あなたは自分の立場になります。これは大きな話だと思っている人も多いかもしれませんが、立って話しても問題はありません。同様に、インタビュアーの場合、それに対処するためにSpringBootを学ぶ必要がありますか、それともSpring FamilyBucketに習熟している必要がありますか。答えは不明です!!!
Javaインタビューで遭遇するいくつかの質問は次のとおりです。200の対象を絞ったインタビューの質問、キャリアプランニングからのITの体系的な要約、Javaの基本知識、高度なJava開発テクノロジー、インタビュースキル、感情指数、IQ Javaプログラマーを募集する企業向けの一般的なテストサイト。この本の内容のほとんどは、主要なIT企業の実際のインタビューの質問に基づいており、読者がIT企業のインタビューの特徴とコンテキストを正確に把握し、激しい競争の中でお気に入りの仕事を見つけるのに役立ちます。
Javaプログラマーインタビューブックの内容と知識システム
パート1求人検索の準備(第1章)
この記事の主な内容には、個人的なメンタリティの位置付け、インタビュー資料の準備、履歴書の配信、インタビュープロセス、実践的なインタビュースキル、および一般的な質問が含まれます。この記事は、読者が最初から仕事探しの準備をし、インタビューのプロセス全体を理解し、自信をつけることができるように、シンプルで理解しやすいように努めています。
第1章ソフトウェア開発職に応募する前に知っておくべきこと
人々はよく言います:機会は常に準備ができている人のために予約されています。仕事に応募する前に、あなたはあなたの求職態度を明確にし、求職プロセスに精通し、十分に準備し、そしていくつかの予見可能なことをうまくやらなければなりません。このように、あなたはあなたが募集しているときに自信を持って驚くことはありません。求人検索の過程で、予測できないことがあります。これらのことは、求職者の考え方を混乱させ、求職の結果に影響を与える可能性があります。候補者ができるだけ早く準備作業を行うことができれば、予期せぬ事態が発生したとしても、大きな影響はなく、状況をコントロールすることができます。
- 1.1キャリアプランを理解する
- 1.2申請プロセス
- 1.3面接の方法
- 1.4まとめ
第2章Javaの基本知識(第2章から第6章)
この記事には70のインタビューの質問が含まれ、主な内容にはJavaプログラムの基礎、文法の基礎、オブジェクト指向のプログラミング、データタイプ、データ収集、グラフィカルユーザーインターフェイスの開発などが含まれます。この記事の内容は、Java言語とJavaシステム構造の基礎です。読者の理解を容易にするために、多数のサンプルコードと図が使用されています。
第2章Javaプログラムの基礎
Javaは言語であり、技術仕様でもあり、デスクトップアプリケーション、エンタープライズレベルのプログラム、モバイルデバイスアプリケーションなどのさまざまな側面をカバーしています。Javaの基本概念を深く理解することは、Javaの高レベルのテクノロジーを習得するために非常に重要です。
- 2.1開発および運用環境
- 2.2JAVA言語の概要
- 2.3生産、展開、構成
- 2.4まとめ
第3章Java構文の基本
Java言語の文法はC / C ++と非常に似ていますが、C / C ++のレガシーがあります。したがって、CIC ++プログラミング基盤を持つプログラマーがJavaを学ぶのは比較的簡単です。ただし、いくつかの文法的な類似点の背後には本質的な違いがあります。Javaの文法を理解する一方で、読者はJavaの文法をより深く理解するために、その原則と実装をC / C ++と区別する必要があります。
- 3.1基本的なタイプと構文
- 3.2オブジェクトとタイプ
- 3.3パッケージとアクセス制御
- 3.4まとめ
第4章データタイプとタイプ変換
データはプログラム操作の対象であり、プログラムの中核でもあります。データを失うプログラムには意味がありません。Javaデータタイプは、基本データタイプと参照データタイプの2つのカテゴリに分類できます。基本的なデータタイプには、byte。short、int、long、float、double。boolean、char8種類があります。参照タイプは、操作オブジェクトのハンドルタイプデータの一種です。ただし、参照タイプによって操作されるオブジェクトも基本データタイプに基づいているため、基本データタイプを理解することがJava学習の基礎になります。
- 4.1整数データ
- 4.2実際のデータ
- 4.3ブールデータ
- 4.4文字データ
- 4.5文字列データ
- 4.6まとめ
第5章配列とコレクションの使用
基本的なデータの種類や参照の種類のデータに関係なく、コレクションの形式で操作できます。Javaでは、データを操作する最も一般的な形式は配列とコレクションです。Java言語の配列は、Javaの特別なクラスとして、より特徴的です。基本的なデータ型を操作し、さまざまな方法でデータ型を参照します。さらに、Javautilパッケージは、リンクリスト、コレクション、マップなど、いくつかのコレクションクラスを提供します。これらは、配列よりもデータセットを操作するのに便利です。それらには独自の特性があり、データの保存と操作の方法が異なります。さまざまな状況で使用する必要があります。コレクションクラス。
- 5.1Javaの値
- 5.2収集フレームワーク
- 5.3まとめ
第6章Javaグラフィカルユーザーインターフェイス
グラフィカルユーザーインターフェイス(GUD)は、Java開発の重要な側面ですが、現在の人気は高くありません。ただし、Swingのソフトスポットを持っている一部の企業では、開発者がグラフィカルユーザーインターフェイスプログラムを開発する能力を必要としています。さらに、Javaのグラフィカルユーザーは、Javaを学習するプロセスの段階であるJava SEのカテゴリに属しています。そのAPIは、合理的で使いやすいように設計されています。グラフィカルユーザーインターフェイスの知識を調べることで、申請者のJava開発および設計スキルの一部を確認できます。 。
- 6.1グラフィカルユーザーインターフェイスの基本
- 6.2レイアウト制御
- 6.3イベントモデル
- 6.4Stringプログラミングアプリケーション
- 6.5まとめ
第3章Javaの高度な機能(第7章から第11章)
この記事には46のインタビューの質問が含まれ、主な内容にはJava 10システム、マルチスレッドプログラミング、リフレクションメカニズム、ネットワークプログラミング、データベースアクセスなどが含まれます。この記事の内容はすべて、Javaプログラミングでよく使用される高度なテクノロジーであり、これらのテクノロジーは、Javaインタビューの焦点となることがよくあります。
第7章入力ストリームと出力ストリーム
入力と出力は、コンピュータプログラムが関与する必要のある問題であり、Javaプログラムも例外ではありません。Javaはネットワークの発展とともに開発され、I / O(入力と出力)はネットワーク通信の基礎です。Javaの10の設計は非常に合理的であり、非常に使いやすいです。I0には非常に多くのAPIがあり、それらすべてを覚えることは不可能であり、すべてを使用することは不可能です。重要なのは、javaioパッケージの下にあるAPIのいくつかのコアコンセプトを理解することです。たとえば、ストリーム、バイトストリーム、文字ストリーム、キャッシュなど、ほとんどのクラスまたはインターフェイスは、これらの概念に基づいて実行されます。
- 7.1ファイルクラス
- 7.2Streamクラス
- 7.3シリアル化
- 7.4まとめ
第8章マルチスレッドプログラミング
同時実行の場合、通常、マルチプロセスとマルチスレッドの2つの方法があります。プロセスは、CPUや占有メモリなどのシステムの基本単位であり、スレッドはプロセスの実行単位です。マルチプロセスの同時実行性はデータ共有にとって非常に困難ですが、マルチスレッド化は非常に簡単であるため、ほとんどの場合、同時実行性はマルチスレッド化を指します。Javaのマルチスレッドは言語レベルであり、オペレーティングシステムのAPIに依存しません。また、Javaのマルチスレッドプログラミング機能は非常に強力で使いやすいです。
- 8.1マルチスレッドプログラミングの基本概念
- 8.2Javaでのマルチスレッドプログラミング
- 8.3まとめ
第9章Javaのリフレクションメカニズム
リフレクションメカニズム(Reflection)は、Javaが提供する比較的高度な機能です。一般に、Java開発者が使用することは比較的まれです。ただし、Javaリフレクションは、Struts、Hibernate、Springなどのほとんどのフレームワークの基盤です。反射メカニズムは、外科医の解毒ツールのようなものです。突然、人が宇宙からやって来ます。その特定の構造をどのように知っていますか?それを分析するのが最善の方法です。反射メカニズムは、Javaクラスを分析するために使用されます。インターフェイス、メソッド、属性、その他の要素。
- 9.1リフレクションの基本
- 9.2リフレクションアプリケーションの例
- 9.3まとめ
第10章Javaネットワークプログラミング
Javaが誕生した日から、ネットワークの発展とともに発展してきましたので、Javaは間違いなくネットワークプログラミングを十分にサポートしてくれるでしょう。ほとんどのコンピューター言語でのネットワーク通信の基本的なプログラミングモードは、ソケット(ソケット)の形式を採用しており、Javaも同じです。このモードは、現在世界中で普及しているTPCCP通信プロトコルに基づいています。
- 10.1ネットワークプログラミングの基礎
- 10.2Javaネットワークプログラミングの例
- 10.3まとめ
第11章データベースでのJava操作
データベースは、今日最も使用されているサーバーソフトウェアの1つです。簡単に言えば、その機能はデータの保存と取得です。Javaプログラムでデータベースにアクセスする必要がある場合、それはサポートされていますか?これは確かです。Javaとデータベース接続に推奨されるテクノロジーは、もちろんJDBC(Java DataBase onnctivity、Javaデータベース接続)です。これはJDKに組み込まれており、さまざまなデータベース間の違いを保護し、データに統一されたリレーショナルクエリステートメントSQLを使用できます。操作の追加、削除、確認、および変更。
- 11.1SQLの基本
- 11.2JDBC
- 11.3JDBCのさまざまな操作データソース
- 11.4まとめ
第4章JavaEE関連の質問(第12章から第14章)
この記事には43のインタビューの質問が含まれ、主なコンテンツにはWeb開発基盤、SSHフレームワーク(Struts、Spring.Hibermate)、EJB、JPAなどが含まれます。この記事の内容は、Java Web開発で習得する必要のある内容であり、Javaプログラマーへのインタビューのもう1つの焦点でもあります。
第12章Web開発関連技術
Java Web開発は、現在Javaで最も広く使用されている分野であり、Web開発に関する最も多くのインタビューの質問がよくあります。時々、人々がよく話すJava開発は、特にJavaWeb開発を指します。Web開発には成熟した技術が数多くあり、開発者がそれらを包括的かつ徹底的に習得することは容易ではありません。サーブレット、JSP、MVCなどを含む、よりコアな知識については、インタビューの焦点です。
- 12.1サーブレットとWebコンテナ
- 12.2JSP動的言語
- 12.3表現言語とJSTL
- 12.4まとめ
第13章支柱、春、休止状態の組み合わせ
Java Web開発の分野では、Struts、Spring、Hibermateの3つのフレームワークが非常に有名で、略してSSHと呼ばれます。Webアプリケーションでそれぞれの役割を果たし、Webアプリケーションを完全に構築します。これにより、開発効率が向上するだけでなく、日常のメンテナンスも容易になります。Strutsは典型的なMVCモデルフレームワークであり、主にHTTP要求の受信と応答を担当します。
- 13.1MVCとStruts
- 13.2休止状態
- 13.3春
- 13.4まとめ
第14章EJBおよびJPA関連の問題
J2EEが5番目のバージョンであるJavaEE 5.0に発展するとき、EJBの調整は重要であり、EJBの新しいバージョンはEJB3.0と呼ばれます。EJBプログラムの開発はもはや難しくありません。Java5.0標準アノテーション(Annotation)を使用してEJBの複雑なXMLアノテーションを置き換え、不要なインターフェイスへの侵入を排除するため、EJBBeanは多くの開発者によってサポートされている通常のJavaクラスになります。 。
- 14.1EJB3.0
- 14.2JPA仕様
- 14.3まとめ
第5章アルゴリズムと設計パターン(第15章)
この記事には15のインタビューの質問が含まれています。主な内容は、Javaプログラマーがインタビュー中に頻繁に遭遇するアルゴリズムと設計パターンの知識です。アルゴリズムはプログラムの中心です。設計パターンは、いくつかの一般的な問題を解決できる、前任者によるいくつかの古典的な開発パターンの要約です。アルゴリズムと設計パターンは、多くの場合、技術面接の焦点です。
第15章Javaプログラミングテストの質問
アルゴリズムはあらゆるプログラムの精神です。一部の開発者は、Javaが豊富なAPIを提供し、ほとんどの機能を比較的簡単に実行できると考えています。したがって、プログラマーは、APIの使用法に精通している限り、アルゴリズムを無視できます。これは間違った考えです。実際、ほとんどの場合、Javaプログラムの実行効率は、依然として開発者のアルゴリズムに依存しています。特に新卒者の場合、採用部門は新卒者があまり練習していることを調べないことがよくありますが、機敏なアルゴリズムの考え方を持っている必要があります。
- 15.1基本的なプログラミングテストの質問
- 15.2高度なプログラミングテストの質問
- 15.3まとめ
第6章EQおよびIQクラシックインタビューの質問(第16章、第17章)
この記事には26のインタビューの質問が含まれており、主な内容はEQとIQのインタビューの質問です。EQおよびIQテストでは、求職者の包括的な回復力と論理的能力を調べるだけでなく、彼らの幅広い知識、学習能力、判断力、および問題解決能力も調べることができます。また、これらの質問を通じて、求職者の個性を知ることもできます。したがって、この種の質問は、プログラマーのインタビューでもホットな問題です。これらの質問への回答は必ずしも一意ではありません。この記事では、推論プロセスの分析とこれらの質問のアイデアへの回答に焦点を当てており、実際のインタビューは特定の状況に応じて回答する必要があります。
第16章感情的知性インタビューの質問
ソフトウェア開発は技術的な仕事ですが、インタビューの過程では、いくつかの感情的な知性のインタビューの質問が不可欠です。これらの面接の質問は、求職者の技術レベルを調べることを目的としたものではなく、これらの質問を通じて、求職者の精神と問題を分析および解決する能力を確認することを目的としています。この章では、ITインタビューにおけるいくつかの一般的な感情的知性インタビューの質問を取り上げ、これらの質問を分析して、読者が自分の状況に応じてこれらの質問に適切に答えられるようにします。
- 16.1新入生の卒業問題
- 16.2通常の質問への回答
- 16.3まとめ
第17章IQインタビューの質問
一部の大企業のインタビューの質問では、求職者の論理的思考能力や脳の反応速度などのさまざまな情報を調べることができるIQインタビューの質問をよく目にします。この時代は、どんな仕事の面接でも、一般的にそういう質問が多かれ少なかれあり、過去2年間のIT面接でもよくある面接の質問です。答えは一律ではないかもしれませんが、一つあります。特定のアイデアは、主に求職者の人生経験や知恵などの要因によって決定されます。
- 17.1ブレインティーザー
- 17.2論理的推論
- 17.3計算上の推論
- 17.4まとめ
もちろん、面接の質問だけでは不十分です。よりよく学びたい場合でも、体系的な学習目標を設定して、よりよく学び、改善できるようにする必要があります。以下に、マルチスレッド、JVM、メッセージミドルウェア、 RPC、SpringBoot、SpringCloud、Docker、MySQL、Git、Mybatis、ソースコード分析、学習を組み合わせるための着陸プロジェクトのXmind:
最後の言葉
Javaインタビューは、仕事を探している場合でも、転職して給与を上げる場合でも不可欠です。知識に精通し、アプリケーションに精通している必要があります。プログラマーの世界では、「知る」ことはできないことと同じです。答えはありません。あらゆる努力が報われ、あらゆる努力は一見の価値があります。
どうやって入手するの?
-のように+フォローして、無料で受け取るための小さなアシスタントを追加します(100%無料で受け取ります〜)Javaインタビュー+ Xmind +学習ビデオ、好きなだけ、私が持っている限り。