国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ Java &#&面接の質(zhì)問 Java 面接でよくある基本的な質(zhì)問

Java 面接でよくある基本的な質(zhì)問

Dec 14, 2019 pm 03:06 PM
java

Java 面接でよくある基本的な質(zhì)問

JDK と JRE の違いは何ですか?

JDK: Java Development Kit の略で、Java 開発ツールキットであり、Java の開発環(huán)境と実行環(huán)境を提供します。

JRE: Java Runtime Environment の略で、Java 実行環(huán)境。Java の動(dòng)作に必要な環(huán)境を提供します。 (推奨される調(diào)査: java の一般的な面接の質(zhì)問 )

具體的には、JDK には実際には JRE が含まれており、Java ソース コードをコンパイルするコンパイラ javac も含まれており、多くの Java プログラムのデバッグやツールも含まれています。分析。簡単に言うと、Java プログラムを?qū)g行する必要がある場合は JRE をインストールするだけでよく、Java プログラムを作成する必要がある場合は JDK をインストールする必要があります。

== 等しいと等しいの違いは何ですか?

== の効果は、次のように基本型と參照型で異なります:

基本型: 比較されるのは、値が同じかどうかです。

# 參照タイプ: 比較されるのは參照が同じかどうかです。

quals は本質(zhì)的に == ですが、String と Integer が equals メソッドをオーバーライドして値の比較に変える點(diǎn)が異なります。

== 基本型の場合は値の比較、參照型の場合は參照比較、equals はデフォルトで參照比較ですが、String、Integer などの多くのクラスは、equals メソッドをオーバーライドします。などは値の比較に変換するため、通常の狀況では、equals は値が等しいかどうかを比較します。

2 つのオブジェクトの hashCode() が同じ場合、equals() も true でなければなりません。

いいえ、2 つのオブジェクトの hashCode() は同じであり、equals() は true ではない可能性があります。

String str1 = "通話";
String str2 = "重地";
System.out.println(String.format("str1:%d | str2:%d",  str1.hashCode(),str2.hashCode()));
System.out.println(str1.equals(str2));

実行結(jié)果:

str1:1179395 | str2:1179395
false

コード解釈: 「call」と「powerful place」の hashCode() は明らかに同じですが、equals() はfalse, ハッシュ テーブルでは、equal hashCode() は 2 つのキーと値のペアのハッシュ値が等しいことを意味しますが、ハッシュ値が等しいということは、必ずしもキーと値のペアが等しいことを意味するわけではありません。

Java における Final の役割は何ですか?

最後に変更されたクラスを最終クラスと呼び、このクラスは継承できません。

最終的に変更されたメソッドはオーバーライドできません。

最終的に変更された変數(shù)は定數(shù)と呼ばれます。定數(shù)は初期化する必要があります。初期化後は値を変更できません。

Java の Math.round(-1.5) は何に等しいですか?

は -1 に等しい。

文字列は基本的なデータ型ですか?

String は基本型に屬しません?;拘亭?byte、boolean、char、short、int、float、long、double の 8 つあり、String はオブジェクトに屬します。

Java で文字列を操作するためのクラスとは何ですか?それらの違いは何ですか?

文字列を操作するクラスには、String、StringBuffer、および StringBuilder が含まれます。

String と StringBuffer および StringBuilder の違いは、String が不変オブジェクトを宣言することです。各操作では新しい String オブジェクトが生成され、ポインタが新しい String オブジェクトを指しますが、StringBuffer と StringBuilder は元のオブジェクトに基づいて操作が行われるため、文字列の內(nèi)容が頻繁に変更される場合には String を使用しないほうがよいでしょう。

StringBuffer と StringBuilder の最大の違いは、StringBuffer はスレッド セーフであるのに対し、StringBuilder は非スレッド セーフであることですが、StringBuilder のパフォーマンスは StringBuffer よりも高いため、単一の環(huán)境で StringBuilder を使用することをお?jiǎng)幛幛筏蓼埂?-スレッド環(huán)境およびマルチスレッド環(huán)境では、StringBuffer を使用することをお?jiǎng)幛幛筏蓼埂?

String str="i" は String str=new String("i") と同じですか?

メモリ割り當(dāng)て方法が異なるため、異なります。 String str="i" の場合、Java 仮想マシンはそれを定數(shù)プールに割り當(dāng)て、String str=new String("i") はヒープ メモリに割り當(dāng)てられます。

文字列を反転するにはどうすればよいですか?

StringBuilder または stringBuffer の reverse() メソッドを使用します。

サンプル コード:

// StringBuffer reverse
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("abcdefg");
System.out.println(stringBuffer.reverse()); // gfedcba
// StringBuilder reverse
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("abcdefg");
System.out.println(stringBuilder.reverse()); // gfedcba

String クラスの一般的なメソッドは何ですか?

indexOf():返回指定字符的索引。
charAt():返回指定索引處的字符。
replace():字符串替換。
trim():去除字符串兩端空白。
split():分割字符串,返回一個(gè)分割后的字符串?dāng)?shù)組。
getBytes():返回字符串的 byte 類型數(shù)組。
length():返回字符串長度。
toLowerCase():將字符串轉(zhuǎn)成小寫字母。
toUpperCase():將字符串轉(zhuǎn)成大寫字符。
substring():截取字符串。
equals():字符串比較。

抽象クラスには抽象メソッドが必要ですか?

いいえ、抽象クラスには必ずしも抽象メソッドが必要というわけではありません。

サンプル コード:

abstract class Cat {
    public static void sayHi() {
        System.out.println("hi~");
    }
}

上記のコードでは、抽象クラスには抽象メソッドがありませんが、正常に実行できます。

通常のクラスと抽象クラスの違いは何ですか?


通常のクラスには抽象メソッドを含めることはできませんが、抽象クラスには抽象メソッドを含めることができます。

抽象クラスは直接インスタンス化できませんが、通常のクラスは直接インスタンス化できます。

抽象クラスはfinalで変更できますか?

いいえ、抽象クラスを定義すると他のクラスが継承することになります。finalとして定義するとクラスを継承できず競合が発生するため、finalでは抽象クラスを変更できません、下の図に示すように、エディターは次のエラー メッセージも表示します。

Java 面接でよくある基本的な質(zhì)問

インターフェースと抽象クラスの違いは何ですか?

実裝: 抽象クラスのサブクラスは継承に extends を使用し、インターフェイスはインターフェイスを?qū)g裝するためにimplements を使用する必要があります。

構(gòu)造函數(shù):抽象類可以有構(gòu)造函數(shù);接口不能有。

main 方法:抽象類可以有 main 方法,并且我們能運(yùn)行它;接口不能有 main 方法。

實(shí)現(xiàn)數(shù)量:類可以實(shí)現(xiàn)很多個(gè)接口;但是只能繼承一個(gè)抽象類。

訪問修飾符:接口中的方法默認(rèn)使用 public 修飾;抽象類中的方法可以是任意訪問修飾符。

java 中 IO 流分為幾種?

按功能來分:輸入流(input)、輸出流(output)。

按類型來分:字節(jié)流和字符流。

字節(jié)流和字符流的區(qū)別是:字節(jié)流按 8 位傳輸以字節(jié)為單位輸入輸出數(shù)據(jù),字符流按 16 位傳輸以字符為單位輸入輸出數(shù)據(jù)。

BIO、NIO、AIO 有什么區(qū)別?

BIO:Block IO 同步阻塞式 IO,就是我們平常使用的傳統(tǒng) IO,它的特點(diǎn)是模式簡單使用方便,并發(fā)處理能力低。

NIO:New IO 同步非阻塞 IO,是傳統(tǒng) IO 的升級,客戶端和服務(wù)器端通過 Channel(通道)通訊,實(shí)現(xiàn)了多路復(fù)用。

AIO:Asynchronous IO 是 NIO 的升級,也叫 NIO2,實(shí)現(xiàn)了異步非堵塞 IO ,異步 IO 的操作基于事件和回調(diào)機(jī)制。

Files的常用方法都有哪些?

Files.exists():檢測文件路徑是否存在。
Files.createFile():創(chuàng)建文件。
Files.createDirectory():創(chuàng)建文件夾。
Files.delete():刪除一個(gè)文件或目錄。
Files.copy():復(fù)制文件。
Files.move():移動(dòng)文件。
Files.size():查看文件個(gè)數(shù)。
Files.read():讀取文件。
Files.write():寫入文件。

以上がJava 面接でよくある基本的な質(zhì)問の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JDBCを使用してJavaのトランザクションを処理する方法は? JDBCを使用してJavaのトランザクションを処理する方法は? Aug 02, 2025 pm 12:29 PM

JDBCトランザクションを正しく処理するには、最初に自動(dòng)コミットモードをオフにし、次に複數(shù)の操作を?qū)g行し、結(jié)果に応じて最終的にコミットまたはロールバックする必要があります。 1。CONN.SETAUTOCOMMIT(FALSE)を呼び出して、トランザクションを開始します。 2。挿入や更新など、複數(shù)のSQL操作を?qū)g行します。 3。すべての操作が成功した場合はconn.commit()を呼び出し、データの一貫性を確保するために例外が発生した場合はconn.rollback()を呼び出します。同時(shí)に、リソースを使用してリソースを管理し、例外を適切に処理し、接続を密接に接続するために、接続の漏れを避けるために使用する必要があります。さらに、接続プールを使用してセーブポイントを設(shè)定して部分的なロールバックを達(dá)成し、パフォーマンスを改善するためにトランザクションを可能な限り短く保つことをお?jiǎng)幛幛筏蓼埂?/p>

Javaでカレンダーを操作する方法は? Javaでカレンダーを操作する方法は? Aug 02, 2025 am 02:38 AM

Java.Timeパッケージのクラスを使用して、古い日付とカレンダーのクラスを置き換えます。 2。LocalDate、LocalDateTime、LocalTimeを通じて現(xiàn)在の日付と時(shí)刻を取得します。 3。of()メソッドを使用して特定の日付と時(shí)刻を作成します。 4.プラス/マイナスメソッドを使用して、時(shí)間を不正に増加させて短縮します。 5. ZonedDateTimeとZoneIDを使用して、タイムゾーンを処理します。 6。DateTimeFormatterを介したフォーマットおよび解析の文字列。 7.インスタントを使用して、必要に応じて古い日付型と互換性があります?,F(xiàn)代のJavaでの日付処理は、java.timeapiを使用することを優(yōu)先する必要があります。

Javaフレームワークの比較:Spring Boot vs Quarkus vs Micronaut Javaフレームワークの比較:Spring Boot vs Quarkus vs Micronaut Aug 04, 2025 pm 12:48 PM

Pre-formanceTartuptimeMemoryusage、quarkusandmicronautleadduetocopile-timeprocessingingandgraalvsupport、withquarkusoftentylightbetterine serverlessシナリオ。

ネットワークポートとファイアウォールの理解 ネットワークポートとファイアウォールの理解 Aug 01, 2025 am 06:40 AM

ネットワークポートアンドファイアワルクトグテルトエナブルコマニケーションwhiledensuringsecurity.1.networksarevirtualendpointsnumbered0–655 35、withwell-knownportslike80(http)、443(https)、22(ssh)、および25(smtp)識(shí)別pecificservices.2.portsoperateovertcp(信頼できる、c

Garbage CollectionはJavaでどのように機(jī)能しますか? Garbage CollectionはJavaでどのように機(jī)能しますか? Aug 02, 2025 pm 01:55 PM

JavaのGarbage Collection(GC)は、メモリを自動(dòng)的に管理するメカニズムであり、到達(dá)不可能なオブジェクトを取り戻すことでメモリ漏れのリスクを軽減します。 1.GCルートオブジェクトからのオブジェクトのアクセシビリティ(スタック変數(shù)、アクティブスレッド、靜的フィールドなど)、および到達(dá)不可能なオブジェクトはゴミとしてマークされています。 2。マーククリアリングアルゴリズムに基づいて、すべての到達(dá)可能なオブジェクトをマークし、マークのないオブジェクトをクリアします。 3.世代の収集戦略を採用する:新世代(Eden、S0、S1)は頻繁にMinorGCを?qū)g行します。高齢者のパフォーマンスは少なくなりますが、MajorGCを?qū)g行するのに時(shí)間がかかります。 Metaspaceはクラスメタデータを保存します。 4。JVMはさまざまなGCデバイスを提供します。SerialGCは小さなアプリケーションに適しています。 ParallelGCはスループットを改善します。 CMSが減少します

ユーザーデータにHTML「入力」タイプを使用します ユーザーデータにHTML「入力」タイプを使用します Aug 03, 2025 am 11:07 AM

適切なHTMLinputタイプを選択すると、データの精度を向上させ、ユーザーエクスペリエンスを向上させ、使いやすさを向上させることができます。 1.テキスト、電子メール、電話、番號(hào)、日付など、データ型に従って対応する入力タイプを選択します。 2。HTML5を使用して、より直感的な相互作用方法を提供できるU(xiǎn)RL、色、範(fàn)囲、検索などの新しいタイプを追加します。 3.プレースホルダーと必要な屬性を使用して、フォームフィリングの効率と精度を改善しますが、プレースホルダーがラベルを置き換えることはできないことに注意してください。

Javaビルドツールの比較:Maven vs. Gradle Javaビルドツールの比較:Maven vs. Gradle Aug 03, 2025 pm 01:36 PM

gradleisthebetterchoiceformostnewprojectoitssuperorfficability、performance、andmoderntoolingsupport.1.gradle’sgroovy/kotlindslismoreconciseandexpressiveethanmaven’sverboseml.2.gradleorformsmavenbenbumebutedwitedwitedwitedspedexは

説明された延期聲明の例で進(jìn)みます 説明された延期聲明の例で進(jìn)みます Aug 02, 2025 am 06:26 AM

Deferは、クリーニングリソースなど、関數(shù)が戻る前に指定された操作を?qū)g行するために使用されます。パラメーターは、延期時(shí)にすぐに評価され、関數(shù)は最後のファーストアウト(LIFO)の順に実行されます。 1.複數(shù)の債務(wù)は、宣言の逆の順序で実行されます。 2.ファイルの閉鎖などの安全なクリーニングに一般的に使用されます。 3。指定された返品値を変更できます。 4.回復(fù)に適したパニックが発生した場合でも実行されます。 5。リソースの漏れを防ぐために、ループで延期の亂用を避けます。正しい使用により、コードのセキュリティと読みやすさが向上します。

See all articles