アリババ2020(完全かつ詳細版)のコンパイルに基づいて、完全な答えと高度なJavaのインタビューの質問

インタビュアーは、あなたの能力の分認識のわずか数十にしたいですか?Javaテクノロジ・スタックは、最短時間での知識の中核を収穫したいと思いますか?Java技術のより包括的かつ深い理解をしたいですか?このJavaの一般的な面接の質問をしたいすべての答えに記事。

2019最新のJava共通面接の質問(答え).JPG

 1.コレクションの役割は何ですか?

データ、削除、変更、チェック、constainsAllによって送信、異なるタイプのオブジェクトを格納することができます。

  2、メソッドの共通セットは、これらのですか?どのような一般的な方法は?(操作)

コレクショントラバーサルメソッドのリストは以下のとおりです。

イテレータ:

列挙

にとって

取得する

セットする

一般的な方法のコレクションは、次のとおりです。

イテレータ()

追加()

晴れ();

削除する()

より多くのポイント私のJavaの一般的な面接の質問

  図3に示すように、違いを見分けるのArrayList、ベクター、LinkedListの保存性とのHashMapとハッシュテーブルの特性

ArrayListVector:アレイ状に格納し、追加、削除が遅い検索、変更速いです

ArrayListに:スレッドセーフな、速いです

ArrayListに:スレッドセーフな、遅い(synchoronized)

LikedList:店舗、追加の単一リンクリスト、削除高速検索、ゆっくりと変化します

HashMapのやHashtableのは、Mapインタフェース、ハッシュテーブルスレッドセーフ、HashMapのスレッドセーフを実装します。

  4、コレクションと差のコレクション。

コレクションのルートインタフェースは、設定されているリストのセットの下でと

コレクションのアルゴリズムのコレクションです。

 5、セット、要素が繰り返されていない、この方法はそれを繰り返すかどうかを区別するために使用?それは(ある)?彼らはどのように?使用==や違いに等しいか区別するためにそこに使用されているすべての重複したオブジェクトが含まれているか、いません。

同一でない場合は等しくないことを証明するために、hashCodeメソッドの最初の呼び出しを比較する場合。

もしそうなら、呼び出し等しいことを証明するための方法に等しいかのように、同一ではない方法で、同じ等しい、等しくない証明しました。

==:主に基本データ型と参照に使用されます

等しい:比較またはオブジェクト参照の主な目的を。

特定のセットには、裁判官に使用される要素が含まれている場合。

  6、Collectionインタフェースから継承されたかどうかをリスト、セット、地図?

Collectionから継承されたリスト、セット

地図は比較的独立しているコレクションから継承されていません。

コレクションは、一セットはコンストラクタによってさらに設定するように構成されてもよい、タイプに属するオブジェクト。

  7、オブジェクト指向機能は何がありますか?

1.要約:

親クラスのメソッドに共通する、一般的なプロパティを、検索

2.継承:

親クラスのすべてのプロパティとメソッドは、再利用することができた親クラスからサブクラス継承は、覆われていてもよいです。

3.パッケージ:

クラス属性とメソッドを複数備え。

4.多型:

ダイナミック:

静的:

  8、文字列は、最も基本的なデータ型がありますか?

基本データ型は、バイト、int型、char型、長い、フロート、ダブル、ブールと短いが含まれます。

java.lang.Stringでクラスが最終であるため、このクラスを継承することができない、クラスを変更することはできません。改善するために、

省スペース効率は、我々は、StringBufferクラスを使用する必要があります

  9、int型と整数の違いは何ですか?

INTは、基本データ型であり、方法がない、メモリ空間を表すオブジェクトではありません。彼らの仲間は長い、CHAR、DOBLEています

整数はメソッドとプロパティを持つラッパークラスです。彼らの仲間はロング、Double.Floatを持っています

 10.一般例外ランタイム例外と類似点と相違点は何ですか?

実行時例外:javaJVMスローされる例外ではなく、コード処理。

一般的な例外:このメソッドはそれらに対処しなければならないコードを呼び出す、宣言スローした場合にスローされるユーザ例外です。

  11、&と&&の違いは?

&:そして:それは右に左にされている場合もfalseを実行します。

&&:ショートと、右に左場合はfalseを実行しません。

  12、最終的に、最終的には、違いを確定?

プロパティ、メソッド、クラスの最終的な宣言は、属性は、それぞれの方法を上書きすることはできず、クラスが継承することができない、変更することができません。

最終的には例外が文の構造、常に実行手段の一部を扱います。

ファイナライズは、このアプローチは、コレクションの対象となる呼び出しガベージコレクタの実行時に、オブジェクト・クラスのメソッドであります

あなたは、このようなファイルを閉じるなど、ガベージコレクションを、リサイクルする際に追加のリソースを提供するために、このメソッドをオーバーライドすることができます。

オペレータは、オブジェクトのクラスがインタフェースを実装しているかどうかを決定するために使用することができます。

  13、ヒープとスタックの違いは何ですか?

スタックは、線形コレクション、追加、削除要素が同じ期間内に完了しなければならないです。LIFOによる実施例のスタック

管理。

ヒープは、スタックの不可欠な要素であり、

  14、StaticNestedClassとInnerClass違いますか?

StaticNestedClassは静的(スタティック)内部クラス宣言され、それは外部のクラスインスタンスに頼ることができない固体であります

インスタンス化。通常の内部クラスは、外部クラスをインスタンス化する中でインスタンス化する必要があります。

  15、ときアサートを使用するには?

アサーション(アサーション)は、ソフトウェア開発言語に共通のデバッグモードは、多くの開発者のために、このメカニズムをサポートしています。

実装、アサーションは右、それはブール式をチェックし、プログラム内のステートメントです

プログラムは、trueにそのブール式の評価さを確保してはならない。値がfalseの場合は、プログラムが正しい説明ではなくなりました

この状態で、システムは警告を与えるか、または終了します。一般的に、基本的な必須右のためのアサーション保証手順を話します

セックス。アサーションチェックは、開発およびテスト中に、通常は開いています。パフォーマンス、ソフトウェアのリリース後に、アサーションチェックを改善するために、

チャールズは、通常は閉じています。

  16、GCは何がある?なぜGCがあるはず?

GCは、ガベージコレクション手段(GabageCollection)で問題になりやすいプログラマは、忘れるところ、メモリの取り扱いがあります

心またはメモリエラー回復手順は、システムが不安定あるいは崩壊をもたらすことができる、Java(登録商標)のGCの機能は、自動監視を提供します

メモリの自動回復の目的を達成するために、ターゲットオブジェクトがスコープを超えているかどうか、Java言語では、無料割り当てられたメモリを提供していません。

メソッドの表示動作。

  17、shorts1 = 1; S1 = S1 + 1;そこには何も間違っ; shorts1 = 1;?S1 + = 1と何も間違ってはありますか?

shorts1 = 1、S1 = S1 + 1、(S1 + 1つの演算結果がint、必要キャストタイプである)shorts1 = 1。

S1 + = 1;(正しくコンパイル)

  18、恐らくMath.round(11.5)は、恐らくMath.round(-11.5)はどのくらいに等しいどのくらい?に等しいですか?

恐らくMath.round(11.5)== 12Math.round(-11.5)== - 11round方法は、最も近い長整数パラメータを返します

パラメータは1/2を追加した後、床を求めています。

  19、Javaは何後藤を持っていませんか?

JavaはJavaで何の使用はありませんが、単語を禁じます。

  20、私にあなたの最も一般的に見られるのRuntimeExceptionのいずれかを与えます

ArithmeticException、ArrayStoreExceptionが、BufferOverflowException、

BufferUnderflowException、CannotRedoExceptionを、CannotUndoExceptionを、

ClassCastExceptionが、持つCMMException、ConcurrentModificationExceptionが、DOMExceptionが、

EmptyStackException、はIllegalArgumentException、は、IllegalMonitorStateException、

でIllegalPathStateException、IllegalStateExceptionが、て、ImagingOpException、

IndexOutOfBoundsException、MissingResourceExceptionが、ないNegativeArraySizeException、

NoSuchElementException、NullPointerExceptionが、ProfileDataException、

でProviderException、は、RasterFormatException、SecurityExceptionが、SystemExceptionは、

でUndeclaredThrowableException、UnmodifiableSetException、

UnsupportedOperationException

一般的な例外:

IOExceptionが

FileNotFoundException

SqlExceptionが

より多くのポイント私のJavaの一般的な面接の質問

図21は、インタフェースが継承インターフェイスは?抽象クラスである(実装)インタフェースを実装することができますか?抽象クラスが継承エンティティ・クラス(concreteclass)ですか?

インタフェースは、インタフェースを継承することができます。抽象クラスを実装することができます(実装)インターフェイス抽象クラスは、継承可能なエンティティクラスです。

 図22は、本方法は、静的であるかどうかを抽象的、それはまた、ネイティブには、それも同期されていますか?

できません

23は、配列無しの長さ()このメソッドを持っていますか?ストリングは長さ()このメソッドを持っていますか?

配列は、この方法では、長さ属性にこれを持っている)(長さではありません

文字列は、長さ()このメソッドを有します。

コンストラクタコンストラクタはオーバーライドできるかどうか24、?

コンストラクタコンストラクタは継承できませんので、オーバーライドを書き換えることはできませんが、オーバーロードを無効にすることができます。

25、Stringクラスを継承することができますか?

Stringクラスは、それを継承することはできません、最終的なクラスです。

26、文字列に作用するかどうか、長期に作用するかどうかバイトのかどうか役割、上のswtich?

スイッチ(expr1の)は、expr1の整数表現です。したがって、パラメータは、スイッチとケースステートメントに渡されるべきです

これはint型、短い、charまたはバイトです。長い文字列はswtichに基づいて行動することはできません。

27、試し{}最後にで試し{}の後に実行されるコードに続いてreturn文は、そこにあるもの

  ときはリターンの前または後に、実行?

これは、リターンの前に実行、実行されます。

  図28は、両者は同じ値(x.equals(Y)== true)をオブジェクトが、異なるハッシュコードは、この文章の権利を有していてもよいですか?

はい、同じハッシュコード。

 図29は、オブジェクトは、メソッドにパラメータとして渡される場合、この方法は、このオブジェクトのプロパティを変更し、変更には、最後にここで参照または値を転送することによって渡された結果を返すことができますか?

これは、参照によって渡されます

基本データ型:値

オブジェクト:参照

  30、プログラミングの問題:シングルトンを書き出します。

Singletonパターンの主な役割は、Javaアプリケーション、存在の唯一のインスタンスのクラスことを確認することです。

一般的なSingletonパターンは、通常、様々な形でいくつかあります。

最初の形式:クラスを定義し、そのコンストラクタがプライベートで、それはの静的なプライベートクラスを持っています

変数は、実施例、順番にメソッドを呼び出し、初期化の場合、パブリックgetInstanceメソッドを求めることにより、それを参照します。

publicclassSingleton {

privateSingleton(){}

//独自の内部1インスタンスで自分自身を定義し、それは不思議ではないでしょうか?

これは内部コールのためにプライベートであることを//注意

privatestaticSingletoninstance = newSingleton()。

//ここにあなたが直接アクセスすることができ、このクラスへの外部アクセスのための静的メソッドを提供

publicstaticSingletongetInstance(){

returninstance;

}

}

二番目の形式:

publicclassSingleton {

privatestaticSingletoninstance = NULL;

publicstaticsynchronizedSingletongetInstance(){

//この方法は、上記に対する改善であり、各被験者を生成しないが、初めて

//効率を改善するために使用する場合、インスタンスを作成します!

(インスタンス== null)の場合

インスタンス= newSingleton()。

returninstance;}

}

他の形態:

クラスを定義し、そのコンストラクタは、静的メソッドのすべては、プライベートです。

最初の形式は、一般的に、より安全であると考えられています

30、単純な原理とJavaの例外処理メカニズムの応用。

原理:

間違った部分を例外処理に直接行くか、アップスローします。

アプリケーション:

Javaの例外が間違っている、2つの1をキャプチャすることはできませんコーディング、そこに実行されています。一つは宣言スローした場合、処理されなければならない一般的な例外です。

31、利点とガベージコレクションの原則。そして、回復メカニズムの2種類を考えます。

利点:

プログラマは、メモリ、JVMのオートコンプリート、簡単に開発を制御しません。インスタンスが破棄されると非常に低い優先順位を実行すると、プログラムが知ることができません。

32、原則メカニズムJVMクラスのドキュメントの読み込みを説明しますか?

JVMはJavaClassLoaderは、Javaランタイムシステムの重要な構成要素である、クラスローダが達成クラスとそのサブクラスによってロードされます。これは、実行時にロードするクラスファイルを見つけ、クラスを担当しています。

34、char型の変数には、中国語の文字を保存することができますか?なぜ?

unicodeにJavaコーディング、16バイトを占めcharは、その中国を置くことは問題ありませんので、中国のように定義することができます

公開された89元の記事 ウォン称賛63 ビュー40000 +

おすすめ

転載: blog.csdn.net/aa541505/article/details/104072680