インタビューの2の準備

1、スレッドと実行を開始するとの違いは?
    run()メソッドは、タスク処理ロジックエントリスレッドに相当し、それはJava仮想マシンによって直接呼び出され、対応するスレッドの実行されます
    (スタート)の役割は、対応するスレッドを起動する準備状態にスレッド、起動することです()呼び出しは終わりを意味するものではありません該当するスレッドは、スレッドが後で実行することが、実行されている、または実行しないことがあります。
2は、start()メソッドによって、直接()メソッドを実行やる呼び出すことはできませんか?
    はい、呼び出し側のスレッドクラスを直接実行()メソッドならば、それは通常の関数呼び出しとして扱われます。
      [スタート]()メソッドは非同期にrun()メソッドを呼び出すことができますが、直接実行を呼び出す()メソッドは同期ができないん目的は、マルチスレッド。
図3は、クロスドメインの出現と解決
    クロスドメインがあれば、ページBのページのリソースを取得したいことをいいます。B契約のページ、ドメイン名、または異なるポートページは、そのIPアドレスで、ドメイン名アドレスのBページ、アクセス操作がドメイン間で行われ、セキュリティ上の問題のためのブラウザ、一般的にクロスドメインアクセスを制限し、それではありませんクロスドメインリクエストのリソースを許可します。
    溶液:JSONP、JSONP形式にリクエスト経路ターンは、その後、要求
    するJSONPを達成した:コールバック関数を作成し、リモート・サーバとパラメータ、完了コールバックとして渡されたJSONデータ形式でこの関数を呼び出し、JSONデータに充填しますコールバック関数。
    SpringBootクロスドメインソリューション:コントローラプラス@CrossOrigin(次善の原則を参照)で
    @CrossOrigin(起源=「*」、MAXAGE = 3600)//起源=「*」すべてのドメイン名の代わりにはアクセス可能であり
、飛行前に// MAXAGE応答の最大エージングキャッシュ期間は、単純に(秒)クッキー有効です。
図4に示すように、GCガベージにSystem.gc(差)とされている)(確定
    収集し、参照されないオブジェクトを削除します。「にSystem.gc()」により、ガベージコレクションをトリガするが、ガベージコレクションを行う保証するものではありません。
    そう、新しいキーワードが作成したJVMのガベージコレクションは、オブジェクトのみ。オブジェクトが新しい使用を作成しない場合は、実装プロセスを完成させるために機能を使用することができます。
5、Javaオブジェクトは、いくつかの方法で作成されましたか?
    1.のような新しいキーワード、使用:;学生学生=新しい学生を()
    2.クラスClassのnewInstanceメソッドを使用して、このメソッドは、引数なしのコンストラクタは、オブジェクトを作成しないのnewInstanceを呼び出します:学生Student.class.newInstance STU =を();
    3。クラスのコンストラクタのnewInstanceメソッドを使用して、java.lang.relect.Constructorクラスもオブジェクトを作成するnewInstanceメソッドを持っています。私たちは、クラスのnewInstanceメソッドはコンストラクタのnewInstanceメソッドを呼び出します内、実際には、のnewInstanceとプライベートコンストラクタのパラメータを持っているこの方法で呼び出すことができます:学生STU = Constructor.newInstance();
    4、Cloneメソッドを使用します。cloneメソッドを使用するには、私たちは、Cloneableインタフェースを実装し、その定義のcloneメソッドを実装する必要があります。以下のような:学生STU2 = <学生> stu.clone();
6は、半押しとMQメッセージングソリューションを失いましたか?
    1.サーバーが失われた:あなたはMQを再起動すると、メッセージの永続性のメモリは、シリアル化されたファイルから入手しました。
    2.クライアントが欠落しています。ユーザーは、メッセージがまだキャッシュで送信され、MQは読むことができ、再
7、いくつかの方法で要求を?
    し1.Get:指定された要求ページ情報と、エンティティボディを返し
    2.POSTは:URIで特定される新しい従属エンティティとして指定された文書を受け入れるようにサーバに要求
    のみリクエストヘッダページ:2.HEAD
    3.DELETE:リクエストサーバーは、指定されたページを削除するには
    、サーバが別のウェブアドレスに指定されたページを要求します:4.COPYを
    5.LINK:接続関係を確立するためにサーバに要求
    切断関係:6.UNLLINK
8、軽量揮発性、変数のみを変更することができます。同期ヘビー級、また修正された方法
9は、TCP 3ウェイハンドシェイクは、データ伝送を行う、と前に他は、信頼性の高い接続を確立する必要があり
    、クライアントがバックグラウンドに通知するために要求を送信します。1.
    接続を確立することができ、クライアントに応答する背景を
    、クライアントが接続を確認3.フラグ、正しい接続がサーバとの間で確立され、その後のデータ転送が開始
10、UDPプロトコルユーザデータのトランスポート層プロトコルはステートレスなコネクションレスのトランスポートプロトコルである利点が高速で、より少ないリソースを必要とし、そこにはハンドシェークはないが、不安定な簡単にデータパケットの損失を移します。
11、Redisの基礎となるプロトコルがTCPである
12、Javaはどのように商品のスパイクを実現する
    ユーザーが成功した購入後、キャッシュを同期させるのRedisに入れアイテムの数を、数がゼロで、他のユーザーが購入することはできません。
13、のRedisのキャッシュ同期方式
    のデータ読み出し時間。Redisのはない場合は、データベースをチェックしに行くと、内部のRedisを書いた、と有効期限を設定し、調査の内側を開始します。
14、AJAX転送オブジェクト、コントローラ受信方法を
    使用@RequestBodyアノテーションは
    それぞれ豆@requestBodyによって本体に結合されたJSON文字列を要求することができます。
図15は、のJavaキュー
    キューは、操作のみテーブルの前部(フロント)に許可されている挿入のみ後端、テーブル(リア)を削除し、特殊な線形テーブルです。挿入の終了、操作はチームの頭になって終了、削除、チームは終わりではないと述べました。キューの場合、各要素は常にキューキューの後端から入り、その後、チームのうち要素のすべての要素の後に、チームへの現在の要素が、最初に出(FIFO)の最初の原則に従うまで待って、待ち行列の場合それはキュー空のキューと呼ばれ、任意の要素が含まれていません。
    キューは、Javaインターフェースを提供し、このインタフェースを実装する数多くのクラスを提供しています:ArrayBlockingQueue、LinkedBlockingQueue、ConcurrentLinkedQueueを。
    ArrayBlockingQueue、LinkedBlockingQueueとCurrentLinkedQueue、彼らはスレッドセーフなキューです。より高いスループットが、低パフォーマンスLinkedBlockingQueue。

おすすめ

転載: www.cnblogs.com/tk970803/p/11140674.html