Java はソフトウェア開発領域に長年貢献してきました。 Java スキルを学習して習得するだけでなく、これらのスキルをリアルタイムで練習することも必要です。この記事では、主要な面接プロセスを突破し、自分のスキルと知識を確実にテストするのに役立つ、最も人気のある Java 面接の質問をいくつか紹介します。
さらに深く潜りたい場合は、私たちをチェックしてください ソフトウェア工学コース Great Learningで、以下を含む一流の工学部や大学と協力して IIT マドラス、五大湖、ジャイナ大学、IIIT ハイデラバード。 定期的に開催されるに参加する キャリア加速プログラム および 配置ドライブ Great Learningが提供し、さまざまな業界のトップ企業に採用されています。
新入生のためのJavaインタビューの質問
1. Javaとは何ですか?
Javaは、クラスベース、オブジェクト指向であり、非常に人気のある汎用プログラミング言語です。 これは、世界で最も人気のあるプログラミング言語のXNUMXつです。
Hello World in Java:
public class FileName { public static void main(String args[]) { System.out.println("Hello World!"); } }
2. Javaをインストールするにはどうすればいいですか?
コマンドプロンプトからJavaをインストールして、問題のトラブルシューティングに必要なログファイルを生成できるようにします。
java.comにアクセスし、[無料のJavaダウンロード]ボタンをクリックします。
[保存]ボタンをクリックして、Javaソフトウェアをデスクトップに保存します
Javaソフトウェアがデスクトップに保存されていることを確認します。
Windowsコマンドプロンプトウィンドウを開きます。
Windows XP:[スタート]-> [ファイル名を指定して実行]-> [タイプ]をクリックします:cmd
WindowsVistaおよびWindows7:[検索の開始]フィールドで[スタート]-> [タイプ:cmd]をクリックします。
CD (たとえば、ダウンロードやデスクトップなど)
インストーラーを実行し、画面の指示に従います。
3. Javaで文字列を逆にする方法は?
"String str = ""Hello"";
String reverse(String str){ StringBuilder sb = new StringBuilder(); sb.append(str); sb.reverse(); return sb.toString();
}"
4. Javaのスレッドとは何ですか?
スレッドを使用すると、複数の処理を同時に実行することで、プログラムをより効率的に動作させることができます。
スレッドを使用すると、メインプログラムを中断することなく、バックグラウンドで複雑なタスクを実行できます。
Threadクラスを拡張し、そのrun()メソッドをオーバーライドすることで作成できます。
構文の拡張
public class MyClass extends Thread { public void run() { System.out.println("This code is running in a thread"); } }
5. Javaで入力を取得する方法は?
"Scanner in = new Scanner(System.in); System.out.print(""Please enter hour 1: ""); int hour1 = in.nextInt(); System.out.print(""Please enter hour 2: ""); int hour2 = in.nextInt(); System.out.print(""Please enter minute 1: ""); int min1 = in.nextInt(); System.out.print(""Please enter minute 2: ""); int min2 = in.nextInt();"
6. Javaでパスを設定する方法は?
Windows 10およびWindows 8
- [検索]で、次を検索して選択します。システム(コントロールパネル)
- [システムの詳細設定]リンクをクリックします。
- [環境変数]をクリックします。 「システム変数」セクションで、PATH環境変数を見つけて選択します。 [編集]をクリックします。 PATH環境変数が存在しない場合は、[新規]をクリックします。
- [システム変数の編集](または[新しいシステム変数])ウィンドウで、PATH環境変数の値を指定します。 [OK]をクリックします。 [OK]をクリックして、残りのすべてのウィンドウを閉じます。
- コマンドプロンプトウィンドウを再度開き、Javaコードを実行します。
Mac OS Xの
別のバージョンのJavaを実行するには、フルパスを指定するか、java_homeツールを使用します。
%/ usr / libexec / java_home -v 1.8.0_73 –exec javac -version
SolarisとLinux
パスが適切に設定されているかどうかを確認するには、次の手順に従います。
ターミナルウィンドウで、次のように入力します。
%java -version
これにより、Javaツールが見つかった場合、そのバージョンが出力されます。 バージョンが古いか、エラーjava:Command not foundが表示される場合は、パスが正しく設定されていません。
PATHで最初に見つかったJava実行可能ファイルを特定します
ターミナルウィンドウで、次のように入力します。
%どのJava
7. Javaの列挙とは何ですか?
列挙とは、名前付き定数のリストを意味します。 Javaでは、列挙型はクラスタイプを定義します。 列挙型には、コンストラクター、メソッド、およびインスタンス変数を含めることができます。 enumキーワードを使用して作成されます。 各列挙定数は、デフォルトでpublic、static、finalです。 列挙型はクラス型を定義し、コンストラクターを持っていますが、newを使用して列挙型をインスタンス化することはありません。 列挙型変数は、プリミティブ変数とほぼ同じ方法で使用および宣言されます。
8. Javaの継承とは何ですか?
あるクラスが別のクラスのプロパティ(データ メンバー)と機能(メソッド)を取得するプロセスを継承と呼びます。継承の目的は、コードの再利用性を提供して、クラスが独自の機能のみを記述すればよく、残りの共通プロパティと機能は別のクラスから拡張できるようにすることです。
子クラス:
別のクラスの機能を拡張するクラスは、子クラス、サブクラス、または派生クラスと呼ばれます。
親クラス:
プロパティと機能が別のクラスによって使用(継承)されるクラスは、親クラス、スーパークラス、または基本クラスと呼ばれます。
9. JavaでXNUMXつの文字列を比較する方法は?
"// These two have the same value
new String(""test"").equals(""test"") // --> true // ... but they are not the same object
new String(""test"") == ""test"" // --> false // ... neither are these
new String(""test"") == new String(""test"") // --> false // ... but these are because literals are interned by // the compiler and thus refer to the same object ""test"" == ""test"" // --> true "
10. Javaの抽象化とは何ですか?
オブジェクトは、オブジェクト指向プログラミングの構成要素です。 オブジェクトには、いくつかのプロパティとメソッドが含まれています。 アクセス修飾子を使用して、それらを外界から隠すことができます。 他のプログラムへの必要な機能とプロパティへのアクセスのみを提供できます。 これは、OOPSで抽象化を実装するための一般的な手順です。
11. Javaのカプセル化とは何ですか
カプセル化の背後にある考え方は、実装の詳細をユーザーから隠すことです。 データメンバーがプライベートの場合、同じクラス内でのみアクセスできることを意味します。 外部クラスは、他のクラスのプライベートデータメンバー(変数)にアクセスできません。
ただし、プライベート データ フィールドを更新 (たとえば、 void setName(String Name )) し、読み取り (たとえば、String getName()) するようにパブリックのゲッター メソッドとセッター メソッドを設定すると、外部クラスはパブリック メソッドを介してそれらのプライベート データ フィールドにアクセスできます。
12. Java のコレクションとは何ですか?
コレクションは、複数のアイテムをXNUMXつのユニットにグループ化するコンテナのようなものです。 たとえば、チョコレートの瓶、名前のリストなど。
コレクションはすべてのプログラミング言語で使用されており、Javaが登場すると、Vector、Stack、Hashtable、Arrayなどのコレクションクラスもいくつか付属していました。
13. JavaのAPIとは何ですか?
Javaアプリケーションプログラミングインターフェイス(API)は、Java Development Kit(JDK)の一部であるすべてのクラスのリストです。 これには、すべてのJavaパッケージ、クラス、およびインターフェースと、それらのメソッド、フィールド、およびコンストラクターが含まれます。 これらの事前に作成されたクラスは、プログラマーに膨大な量の機能を提供します。
14. Javaで配列を初期化するにはどうすればよいですか?
"int[] arr = new int[5]; // integer array of size 5 you can also change data type
String[] cars = {""Volvo"", ""BMW"", ""Ford"", ""Mazda""};"
15.Javaでユーザーから入力を受け取る方法?
"import java.util.Scanner; Scanner console = new Scanner(System.in); int num = console.nextInt(); console.nextLine() // to take in the enter after the nextInt() String str = console.nextLine();"
16. Javaの静的とは何ですか?
Javaでは、静的メンバーは、クラスのインスタンスに関連付けられていないクラスのメンバーです。 代わりに、メンバーはクラス自体に属します。 その結果、最初にクラスインスタンスを作成しなくても、静的メンバーにアクセスできます。
17. Javaのパッケージとは何ですか?
Javaのパッケージは、関連するクラスをグループ化するために使用されます。 ファイルディレクトリ内のフォルダと考えてください。 パッケージを使用して、名前の競合を回避し、保守しやすいコードを記述します。 パッケージはXNUMXつのカテゴリに分類されます。
組み込みパッケージ(Java APIからのパッケージ)
ユーザー定義パッケージ(独自のパッケージを作成)
18. Javaで配列をソートする方法は?
"import java. util. Arrays;
Arrays. sort(array);"
19. Javaの抽象クラスとは何ですか?
「abstract」キーワードを使用して宣言されたクラスは、抽象クラスと呼ばれます。 抽象メソッド(本体のないメソッド)と具体的なメソッド(本体のある通常のメソッド)があります。 通常のクラス(非抽象クラス)は抽象メソッドを持つことができません。
20. Javaのメソッドとは何ですか?
メソッドは、呼び出されたときにのみ実行されるコードのブロックです。 パラメータと呼ばれるデータをメソッドに渡すことができます。 メソッドは特定のアクションを実行するために使用され、関数とも呼ばれます。
21. Javaのバージョンを確認するにはどうすればよいですか?
コマンドプロンプト/ターミナルでjava-versionを実行します。
22. Javaのクラスとは何ですか?
クラス(Javaなどのオブジェクト指向言語の基本的な構成要素)は、そのクラスのインスタンスに関連付けられたデータと動作を記述するテンプレートです。 クラスをインスタンス化すると、同じクラスの他のインスタンスのように見えるオブジェクトが作成されます。 クラスまたはオブジェクトに関連付けられたデータは変数に格納されます。 クラスまたはオブジェクトに関連付けられた動作は、メソッドを使用して実装されます。
23.コアJavaとは何ですか?
「コアJava」はSunの用語であり、Java SE、標準版、およびJava VM、CORBAなどの関連テクノロジのセットを指すために使用されます。 これは主に、たとえばJavaMEやJavaEEと区別するためです。 また、彼らはプログラミング言語ではなく、一連のライブラリについて話していることに注意してください。
24. ChromeでJavaを有効にする方法は?
- Javaコントロールパネルで、[セキュリティ]タブをクリックします
- ブラウザでJavaコンテンツを有効にするオプションを選択します
- [適用]、[OK]の順にクリックして、変更を確認します
- ブラウザを再起動して変更を有効にします
25. Javaの文字列とは何ですか?
文字列は文字のシーケンスです。たとえば、「Hello」は5文字の文字列です。 Javaでは、文字列は不変のオブジェクトです。つまり、文字列は定数であり、作成後に変更することはできません。
26. Javaの例外とは何ですか?
例外は、プログラムの実行中に発生するイベントであり、プログラムの命令の通常のフローを中断します。
メソッド内でエラーが発生すると、メソッドはオブジェクトを作成し、それをランタイムシステムに渡します。 例外オブジェクトと呼ばれるオブジェクトには、タイプやエラーが発生したときのプログラムの状態など、エラーに関する情報が含まれています。 例外オブジェクトを作成してランタイムシステムに渡すことを、例外のスローと呼びます。
メソッドが例外をスローした後、ランタイムシステムはそれを処理するために何かを見つけようとします。 例外を処理するために考えられる「何か」のセットは、エラーが発生したメソッドに到達するために呼び出されたメソッドの順序付きリストです。 メソッドのリストは、コールスタックと呼ばれます。
27. Javaで多重継承がサポートされていないのはなぜですか?
Javaは、インターフェースを介した多重継承のみをサポートします。 クラスは任意の数のインターフェースを実装できますが、拡張できるのはXNUMXつのクラスのみです。 致命的なダイヤモンドの問題につながるため、多重継承はサポートされていません。
28. Javaで文字列入力を取得するにはどうすればよいですか?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
29. Javaのシングルトンクラスとは何ですか?
シングルトンデザインパターンは、クラスのインスタンス化を制限し、クラスのインスタンスがXNUMXつだけJVMに存在するようにするために使用されます。 つまり、シングルトンクラスは、JVMインスタンスごとに一度にXNUMXつのオブジェクト(クラスのインスタンス)のみを持つことができるクラスです。
30. Javaの配列とは何ですか?
配列は、単一の型の値を固定数保持するコンテナオブジェクトです。 配列の長さは、配列の作成時に確立されます。 作成後、その長さは固定されます。 「HelloWorld!」のメインメソッドで、配列の例をすでに見てきました。 申し込み。 このセクションでは、アレイについて詳しく説明します。
10から0までの番号が付けられた9個のボックスとしての配列の図。 インデックス0は、配列の最初の要素を示します。
10個の要素の配列。
配列内の各項目は要素と呼ばれ、各要素はその数値インデックスによってアクセスされます。 前の図に示されているように、番号付けは0から始まります。したがって、たとえば、9番目の要素はインデックス8でアクセスされます。
31. Javaのガベージコレクションとは何ですか?
Javaガベージコレクションは自動プロセスです。 プログラマーは、削除するオブジェクトを明示的にマークする必要はありません。 ガベージコレクションの実装はJVMにあります。 各JVMは、ガベージコレクションを実装できます。 唯一の要件は、JVM仕様を満たしていることです。 多くのJVMがありますが、OracleのHotSpotが群を抜いて最も一般的です。 堅牢で成熟したガベージコレクションオプションのセットを提供します。
32. Javaでカプセル化する必要があるのはなぜですか?
Javaでのカプセル化は、データ(メソッド)に作用するコードとデータ(変数)をXNUMXつのユニットとしてまとめるメカニズムです。 カプセル化では、クラスの変数は他のクラスから隠され、現在のクラスのメソッドを介してのみアクセスできます。
33. Javaのjvmとは何ですか?
Java仮想マシン(JVM)は、コンピューターがJavaプログラム、およびJavaバイトコードにコンパイルされた他の言語で記述されたプログラムを実行できるようにする仮想マシンです。 JVMは、JVM実装で必要なものを正式に説明する仕様によって詳細に説明されています。
34. Javaプログラミングとは何ですか?
Javaは強力な汎用プログラミング言語です。 デスクトップおよびモバイルアプリケーション、ビッグデータ処理、組み込みシステムなどの開発に使用されます。 Javaを所有する会社であるOracleによると、Javaは世界中で3億台のデバイスで実行されており、Javaを最も人気のあるプログラミング言語のXNUMXつにしています。
35.ハッシュマップはJavaの内部でどのように機能しますか?
JavaのHashMapは、ハッシュの原則に基づいて機能します。 これは、オブジェクトを格納し、キーを知っていれば一定時間O(1)でオブジェクトを取得できるようにするデータ構造です。 ハッシュでは、ハッシュ関数を使用してHashMapのキーと値をリンクします。
36. Javaを発明したのは誰ですか?
Javaは元々SunMicrosystemsのJamesGoslingによって開発され(その後Oracleに買収されました)、1995年にSunMicrosystemsのJavaプラットフォームのコアコンポーネントとしてリリースされました。
37. Javaプログラムを実行するにはどうすればよいですか?
コマンドプロンプトウィンドウを開き、Javaプログラムを保存したディレクトリ(HelloWorld。java)に移動します。 …
'javacHelloWorldと入力します。 java 'を押し、Enterキーを押してコードをコンパイルします。
次に、「HelloWorld」と入力してプログラムを実行します。
ウィンドウに印刷された結果を確認できます。
38. Javaでユーザーから入力を取得するにはどうすればよいですか?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
39. Javaのバイトコードとは何ですか?
バイトコードは、Javaプログラム用にコンパイルされた形式です。 Javaプログラムがバイトコードに変換されると、ネットワークを介して転送され、Java仮想マシン(JVM)によって実行されます。 通常、バイトコードファイルの拡張子は.classです。
40. Javaでクラスパスを設定するにはどうすればよいですか?
- [スタート]、[コントロールパネル]の順に選択し、[システム]をダブルクリックして、[詳細設定]タブを選択します。
- [環境変数]をクリックします。 「システム変数」セクションで、PATH環境変数を見つけて選択します。
- [システム変数の編集](または[新しいシステム変数])ウィンドウで、PATH環境変数の値を指定します。 [OK]をクリックします。
41. Javaでデータベースを接続する方法は?
- アクセスするデータベースをインストールまたは検索します。
- JDBCライブラリを含めます。
- 必要なJDBCドライバーがクラスパス上にあることを確認してください。
- JDBCライブラリを使用して、データベースへの接続を取得します。
- 接続を使用してSQLコマンドを発行します。
42. Javaの列挙型とは何ですか?
列挙型は、定数のグループ(最終変数などの変更不可能な変数)を表す特別な「クラス」です。 列挙型を作成するには、(クラスまたはインターフェイスの代わりに)enumキーワードを使用し、定数をコンマで区切ります。
43. Javaをアンインストールする方法は?
- [スタート]ボタンをクリック
- 設定を選択
- システムを選択
- アプリと機能を選択
- アンインストールするプログラムを選択し、[アンインストール]ボタンをクリックします
- プロンプトに応答して、アンインストールを完了します
44. Javaで文字列内の重複文字を見つける方法は?
"public class Example { public static void main(String argu[]) { String str = ""beautiful beach""; char[] carray = str.toCharArray(); System.out.println(""The string is:"" + str); System.out.print(""Duplicate Characters in above string are: ""); for (int i = 0; i < str.length(); i++) { for (int j = i + 1; j < str.length(); j++) { if (carray[i] == carray[j]) { System.out.print(carray[j] + "" ""); break; } } } }
}"
45. Javaで文字入力を行う方法は?
"import java.util.Scanner; public class CharacterInputExample1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print(""Input a character: ""); // reading a character char c = sc.next().charAt(0); //prints the character System.out.println(""You have entered ""+c); } } "
46. Javaで文字列を読み取る方法は?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
47. Javaで数値を四捨五入するにはどうすればよいですか?
"import java.lang.Math; // Needed to use Math.round() class Program { public static void main( String args[] ) { double num1 = 74.65; System.out.println(Math.round(num1)); float num2 = 1337.345523f; System.out.println(Math.round(num2)); }
}"
48. Javaで現在の日付を取得するにはどうすればよいですか?
"DateFormat df = new SimpleDateFormat(""dd/MM/yy HH:mm:ss"");
Date dateobj = new Date();
System.out.println(df.format(dateobj));"
49. Javaのdaoとは何ですか?
Daoは、JDBCロジックを含む単純なJavaクラスです。 Javaデータアクセスオブジェクト(Java DAO)は、ビジネスアプリケーションの重要なコンポーネントです。 ビジネスアプリケーションは、ほとんどの場合、リレーショナルデータベースまたはオブジェクトデータベースからのデータにアクセスする必要があり、Javaプラットフォームは、このデータにアクセスするための多くの手法を提供します。
50. Javaのawtとは何ですか?
Abstract Window Toolkit(AWT)は、Swingに先行する、Java独自のプラットフォーム依存のウィンドウ処理、グラフィックス、およびユーザーインターフェイスウィジェットツールキットです。 AWTは、Java Foundation Classes(JFC)の一部です。これは、Javaプログラムにグラフィカルユーザーインターフェイス(GUI)を提供するための標準APIです。 AWTは、多くのJavaMEプロファイル用のGUIツールキットでもあります。 たとえば、Connected Device Configurationプロファイルでは、Abstract WindowToolkitをサポートするために携帯電話でJavaランタイムが必要です。
51. Javaのフレームワークとは何ですか?
フレームワークは、特定のドメインの問題を解決するために独自のコードを追加する、事前に記述されたコードの大きな本体(通常は多くのクラス)です。 おそらく、フレームワークは通常、制御されているフレームワークであるため、コードを使用していると言えます。 フレームワークを利用するには、そのメソッド、継承を呼び出し、「コールバック」、リスナー、またはObserverパターンの他の実装を提供します。
52. Javaを更新する方法は?
WindowsでJavaを手動で更新するには、通常、Javaコントロールパネルを使用します。
Windows 10:画面の左下隅にあるWindows / Cortana検索ボックスに「java」と入力します。 ポップアウトメニューが表示されたら、[アプリ]セクションにある[Javaの構成]を選択します。
53.コマンドプロンプトでJavaプログラムを実行するにはどうすればよいですか?
execute java <programName.java>
54. Javaの変数とは何ですか?
Java変数は、データ値を含むことができるメモリの一部です。 したがって、変数のデータ型は次のとおりです。 データ型については、Javaデータ型に関するテキストで詳しく説明されています。 変数は通常、Javaプログラムがその仕事をするために必要な情報を格納するために使用されます。
55. javaとjavascriptの違いは何ですか?
JavaScriptとJavaの主な違いは次のとおりです。
1. JavaScriptはフロントエンド開発に使用され、Javaはバックエンド開発に使用されます。 NS
JavaScript は Web ページの動的な動作を担当します。 JavaScriptは主にWebサイト内のイベントやCookie、ajax(Asynchronous JavaScript and XML)などを処理します。 JavaScript は Web ページの動的ユーザー インターフェイスの中心であり、Java はソフトウェア エンジニアにとって最適なプログラミング言語であり、バックエンドを処理するために JSP (Java Server Pages) とともに使用できます。
2. Javaスクリプトは動的に型付けされた言語であり、Javaは静的に型付けされた言語です。
JavaScriptでは、XNUMXつの変数のデータ型を変更できます。
var string =“ hello world”;
文字列= 4;
document.write(string); //出力は4です
document.write()はブラウザに「4」を出力するようになりました。
ただし、Javaでは、XNUMXつの変数のデータ型を変更できず、Javaはエラーを表示します。
int番号= 45;
number =“ Hello world”; //エラー!!!!!!!
3. JavaScriptはスクリプト言語ですが、Javaはプログラミング言語です。
他の言語と同様に、Javaも、JavaScriptスクリプトがブラウザーによって読み取られて操作される間、プログラムをビルドおよび実行するためのコンパイラーを必要とします。
4.JavaとJavaScriptは構文が大きく異なります。
例:
JAVAのHelloWorldプログラム:
public class hello { public static void main(String[] args) { System.out.println("Hello World"); } } Hello World Program in JavaScript: <script> document.write("Hello World"); </script>
5.どちらの言語もオブジェクト指向ですが、JavaScriptは部分的なオブジェクト指向言語であり、Javaは完全なオブジェクト指向言語です。 JavaScriptはオブジェクトを使用して、または使用せずに使用できますが、Javaはクラスを使用せずに使用することはできません。
56. Javaで文字列内の文字の出現回数を数える方法は?
"import java.util.HashMap; public class EachCharCountInString
{ private static void characterCount(String inputString) { //Creating a HashMap containing char as a key and occurrences as a value HashMap<Character, Integer> charCountMap = new HashMap<Character, Integer>(); //Converting given string to char array char[] strArray = inputString.toCharArray(); //checking each char of strArray for (char c : strArray) { if(charCountMap.containsKey(c)) { //If char 'c' is present in charCountMap, incrementing it's count by 1 charCountMap.put(c, charCountMap.get(c)+1); } else { //If char 'c' is not present in charCountMap, //putting 'c' into charCountMap with 1 as it's value charCountMap.put(c, 1); } } //Printing inputString and charCountMap System.out.println(inputString+"" : ""+charCountMap); } public static void main(String[] args) { characterCount(""Java J2EE Java JSP J2EE""); characterCount(""All Is Well""); characterCount(""Done And Gone""); }
}"
57. JavaでExcelファイルを読み取る方法は?
"FileInputStream fis = new FileInputStream(new File(""WriteSheet.xlsx"")); XSSFWorkbook workbook = new XSSFWorkbook(fis); XSSFSheet spreadsheet = workbook.getSheetAt(0); Iterator < Row > rowIterator = spreadsheet.iterator(); while (rowIterator.hasNext()) { row = (XSSFRow) rowIterator.next(); Iterator < Cell > cellIterator = row.cellIterator(); while ( cellIterator.hasNext()) { Cell cell = cellIterator.next(); switch (cell.getCellType()) { case Cell.CELL_TYPE_NUMERIC: System.out.print(cell.getNumericCellValue() + "" tt ""); break; case Cell.CELL_TYPE_STRING: System.out.print( cell.getStringCellValue() + "" tt ""); break; } } System.out.println(); } fis.close();"
58. Javaのメソッドとは何ですか?
関数は Java ではメソッドとも呼ばれます。
59. Javaでcsvファイルを読み取る方法は?
"public static void readDataLineByLine(String file) { try { // Create an object of filereader // class with CSV file as a parameter. FileReader filereader = new FileReader(file); // create csvReader object passing // file reader as a parameter CSVReader csvReader = new CSVReader(filereader); String[] nextRecord; // we are going to read data line by line while ((nextRecord = csvReader.readNext()) != null) { for (String cell : nextRecord) { System.out.print(cell + ""t""); } System.out.println(); } } catch (Exception e) { e.printStackTrace(); } } "
60. WindowsでJavaのバージョンを確認するにはどうすればよいですか?
コマンドプロンプトでjava-versionと入力します。
61.Javaのpublicstatic void mainとは何ですか?
これは、mainメソッドのアクセス修飾子です。 Javaランタイムがこのメソッドを実行できるように、パブリックである必要があります。 メソッドを非公開にすると、どのプログラムでも実行できなくなり、アクセス制限が適用されることに注意してください。 つまり、メインメソッドはパブリックでなければならないということです。 mainメソッドを非公開として定義するとどうなるか見てみましょう。
Javaランタイムが起動すると、クラスのオブジェクトは存在しません。 そのため、JVMがクラスをメモリにロードしてメインメソッドを呼び出すことができるように、メインメソッドは静的である必要があります。 mainメソッドが静的でない場合、クラスのオブジェクトが存在しないため、JVMはそれを呼び出すことができません。
Javaプログラミングでは、すべてのメソッドが戻り型を提供することが義務付けられています。 Javaのmainメソッドは何も返さないため、戻り型はvoidです。 mainメソッドの実行が終了すると、Javaプログラムが終了するため、これは物事を単純にするために行われました。 したがって、何かを返す意味はありません。返されたオブジェクトに対してJVMで実行できることは何もありません。 mainメソッドから何かを返そうとすると、予期しない戻り値としてコンパイルエラーが発生します。
62. Javaでインターフェイスを使用するのはなぜですか?
これは、完全な抽象化を実現するために使用されます。 Javaはクラスの場合は多重継承をサポートしていませんが、インターフェースを使用することで多重継承を実現できます。 また、緩い結合を実現するためにも使用されます。 インターフェイスは、抽象化を実装するために使用されます。
63. Javaでのシリアル化の目的は何ですか?
オブジェクトのシリアル化は、オブジェクトの状態をバイトストリームに変換するために使用されるプロセスです。バイトストリームは、ディスク/ファイルに永続化するか、ネットワークを介して実行中の他のJava仮想マシンに送信できます。 バイトストリームからオブジェクトを作成する逆のプロセスは、逆シリアル化と呼ばれます。
64. Javaの機能インターフェイスとは何ですか?
Javaの機能インターフェースは、単一の抽象(実装されていない)メソッドのみを含むインターフェースです。 機能インターフェイスには、実装されていない単一のメソッドに加えて、実装されているデフォルトのメソッドと静的メソッドを含めることができます。
65. Javaのこのキーワードは何ですか?
thisキーワードは、メソッドまたはコンストラクター内の現在のオブジェクトを参照します。 thisキーワードの最も一般的な使用法は、クラス属性と同じ名前のパラメーターの間の混乱を排除することです(クラス属性はメソッドまたはコンストラクターパラメーターによってシャドウされるため)。
66. Javaは最初どのように命名されましたか?
この言語は、ゴスリングの外部のオフィスに残っていた樫の木にちなんで、最初は樫と呼ばれていました。 その後、タスクはGreenという名前で渡され、ついにJava、コーヒーブランド、インドネシアのコーヒーからJavaに名前が変更されました。
67. Javaの配列から重複する要素を削除するにはどうすればよいですか?
"public class Change
{ public static int removeDuplicate(int[] arrNumbers, int num) { if(num == 0 || num == 1) { return num; } int[] arrTemporary = new int[num]; int b = 0; for(int a = 0; a < num - 1; a++) { if(arrNumbers[a] != arrNumbers[a + 1]) { arrTemporary[b++] = arrNumbers[a]; } } arrTemporary[b++] = arrNumbers[num - 1]; for(int a = 0; a < b; a++) { arrNumbers[a] = arrTemporary[a]; } return b; } public static void main(String[] args) { int[] arrInput = {1, 2, 3, 3, 4, 5, 5, 6, 7, 8}; int len = arrInput.length; len = removeDuplicate(arrInput, len); // printing elements for(int a = 0; a < len; a++) { System.out.print(arrInput[a] + "" ""); } }
} "
68. Javaでのスローとスローの違いは何ですか?
Throwは、関数内またはコードブロック内のプログラムで明示的に例外をスローするために使用されるキーワードです。 Throwsは、コードの実行中に関数によってスローされる可能性のある例外を宣言するために使用されるメソッドシグネチャで使用されるキーワードです。
69. Javaのクラスパスとは何ですか?
CLASSPATH変数は、JDKツールを含むアプリケーションにユーザークラスを探す場所を指示するXNUMXつの方法です。 (JRE、JDKプラットフォーム、および拡張機能の一部であるクラスは、ブートストラップクラスパスや拡張機能ディレクトリなどの他の方法で定義する必要があります。)
70. Javaプラットフォームが独立しているのはなぜですか?
コンパイル時に、JavaコンパイラはソースコードをJVMで解釈可能な中間形式のセットに変換します。これはバイトコードと呼ばれます。 これは、他のコンパイラによって生成されたコンパイル済みコードとは異なり、実行できません。 Java仮想マシンインタープリターは、実行不可能なコードを処理し、特定のマシンで実行します。 したがって、プラットフォームの依存関係は削除されます。
71.メソッドのオーバーロードとは何ですか? なぜJavaで使用されるのですか?
メソッドのオーバーライドは、親クラスから子クラスに継承されたメソッドが、子クラスの要件に従って変更されるプロセスです。 これは、オブジェクトが共通のプロパティを共有する階層システム設計に役立ちます。
例:動物クラスには、毛皮の色、音などのプロパティがあります。 これで、dogクラスとcatクラスはこれらのプロパティを継承し、それらに固有の値をプロパティに割り当てます。
class Animal { void sound(){ } } class Cat extends Animal{ void sound(){ System.out.println("Meow"); } } class Dog extends Animal{ void sound(){ System.out.println("Bark"); } } public class OverRide{ public static void main(String args[]){ Cat c=new Cat(); c.sound(); Dog d=new Dog(); d.sound(); } }
72. メソッドのオーバーロードとは何ですか? なぜJavaで使用されるのですか?
クラス内の複数の関数の名前が同じで関数定義が異なる場合、それはメソッドのオーバーロードと呼ばれます。
これは、Java関数を複数の目的に使用して、コードをよりクリーンにし、APIの複雑さを軽減するために使用されます。
例:
println() prints any data type passed to it as a string. public class Add_Overload { void add(int x, int y){ System.out.println(x+y); } void add(double x, double y){ System.out.println(x+y); } void add(double x, int y){ System.out.println(x+y); } public static void main(String args[]){ Add_Overload a= new Add_Overload(); a.add(10,20); a.add(20.11,11.22); a.add(20.11,2); }
73. Javaが堅牢なのはなぜですか?
Javaは、次の機能のために堅牢と呼ばれます。
–ポインターの欠如:Javaには、安全性を高めるポインターがありません。
– ガベージ コレクション: Java は、未使用のオブジェクトをメモリから自動的に消去します。
–Javaには強力なメモリ管理があります。
–Javaはダイナミックリンクをサポートしています。
74. Javaが安全なのはなぜですか?
Javaはポインタを許可しません。 ポインタを使用すると、システム内の変数の実際の場所にアクセスできます。 また、Javaプログラムは、JVMでのみ実行できるバイトコード実行可能ファイルです。 したがって、Javaプログラムは、実行しているホストシステムにアクセスできないため、より安全になります。 Javaには独自のメモリ管理システムがあり、セキュリティ機能も追加されています。
75. JDK、JRE、JVMの違いは何ですか?
JDKは、Javaプログラムの開発に使用されるソフトウェア環境です。 これは、さまざまなアプリケーションの開発に使用できるライブラリのコレクションです。 JRE(Javaランタイム環境)は、Javaプログラムの実行を可能にするソフトウェア環境です。 すべてのJavaアプリケーションはJRE内で実行されます。 JVM(Java仮想マシン)は、Javaプログラムのバイトコード実行可能ファイルへの変換を担当する環境です。 JDKとJREはプラットフォームに依存しますが、JVMはプラットフォームに依存しません。
76. Javaの機能は何ですか?
Javaは、次の機能を備えた純粋なオブジェクト指向プログラミング言語です。
- ハイパフォーマンス
–プラットフォームに依存しない
- 壮健
–マルチスレッド
–シンプル
- 安全
77. Javaはポインタをサポートしていますか?
より安全にするために、Javaではポインタはサポートされていません。
このJavaチュートリアルを実行して、理解を深めることもできます。.
78. Javaで静的変数が使用されるのはなぜですか?
静的メソッドと変数は、すべてのオブジェクトにわたってエンティティの単一のコピーを維持するためにJavaで使用されます。 変数が静的として宣言されると、クラスのすべてのインスタンスで共有されます。 インスタンスによって変数に加えられた変更は、すべてのインスタンスに反映されます。
public class static_variable { static int a; static int b; static_variable(){ a=10; } int calc_b(){ b=a+10; return b; }
void print_val(){ System.out.println(this.b);
}
public static void main(String args[]){ static_variable v=new static_variable(); v.calc_b(); v.print_val(); static_variable v1=new static_variable(); v1.print_val();
}
}
79.静的メソッド、静的変数、および静的ブロックとは何ですか?
静的メソッドは、オブジェクトを使用せずにクラス内で直接呼び出すことができるメソッドです。
静的変数は、クラスのすべてのインスタンス間で共有される変数です。
静的ブロックは、クラスがメモリにロードされるときにロードされるコードブロックです。
80. 静的メソッドは何に役立ちますか?
静的メソッドは、クラスをインスタンス化する必要がない場合に使用されます。 メソッドが変更またはオーバーライドされない場合は、静的にすることができます。
81. 静的変数の用途は何ですか?
静的変数は、クラスのすべてのインスタンスが変更およびアクセスできる特定のデータの共通状態を維持するために使用されます。
82.インターフェースは何ですか?
インターフェイスは、定数、静的メソッド、抽象メソッド、およびデフォルトメソッドのコレクションです。 インターフェイスのメソッドには本体がありません。
83. Javaで抽象化はどのように達成されますか?
抽象化は、抽象クラスと抽象メソッドを使用してJavaで実現されます。
84. Javaで文字列が不変なのはなぜですか?
Javaの文字列は、ハッシュマップキーに頻繁に使用されます。 これで、誰かが文字列の値を変更すると、深刻な不一致が発生します。 したがって、文字列は不変になります。
85. Javaのラッパークラスとは何ですか?
ラッパークラスは、プリミティブデータ型を入力として受け入れ、後でそれらを文字列オブジェクトに変換して他のオブジェクトと比較できるようにするために、Javaでサポートされている機能です。
86. Javaのインターフェースは継承できますか?
はい、インターフェースはJavaで継承できます。 ハイブリッド継承と階層継承は、継承可能なインターフェイスを介してJavaでサポートされています。
87. Javaインターフェースでは静的メソッドは許可されますか?
はい、静的メソッドはJavaインターフェースで許可されています。 これらはデフォルトのメソッドとして扱われるため、実装する必要はありません。
88. Javaでガベージコレクションはどのように行われますか?
Javaには、自動組み込みのガベージコレクションメカニズムがあります。 組み込みのメカニズムとは別に、システムクラスのgc()を使用して、ガベージコレクションを手動で開始することもできます。
89.クラスにXNUMXつの主要なメソッドがありますか?
はい、XNUMXつの主な方法があります。 これは、mainメソッドがオーバーロードされていることも意味します。 ただし、実行時には、JVMは元のmainメソッドのみを呼び出し、オーバーロードされたmainメソッドは呼び出しません。
90.プライベート変数は継承できますか?
プライベート変数には、クラス固有の可用性の範囲があります。 それらは、それらが存在するクラスのメソッドによってのみアクセスできます。 したがって、クラスが継承される場合、プライベート変数はサブクラスに継承されません。
91.宣言後に配列のサイズを増やすことはできますか?
宣言後にJava配列のサイズを増やすことはできません。 これはJava配列の制限です。
92.メモリ内の以下の配列のサイズはどれくらいですか?
int a [] = new int [10];
各intブロックのサイズは4バイトで、配列にはそのようなブロックが10個あります。 したがって、配列がメモリに取り込むサイズは40バイトです。
93. Javaはいくつのデータ型をサポートしていますか?
Javaは、byte、short、int、long、float、double、char、booleanの8つのプリミティブデータ型をサポートしています。
94. Javaで文字のASCII値を見つける方法は?
int c = char( 'A')は、JavaでAのASCII値を提供します。
95.コンソールからユーザー入力として文字列を取得するにはどうすればよいですか?
最初に入力リーダークラスをインスタンス化する必要があります。 利用可能なオプションはかなりあり、そのうちのいくつかはBufferedReader、InputStreamReaderScannerです。
次に、クラスの相対的な機能を使用できます。 最も広く使用されているもののXNUMXつは、ScannerクラスのnextLine()です。
96.文字列のサイズを確認するにはどうすればよいですか?
Javaの文字列のサイズは、length()関数を使用して確認できます。
97. Javaで要素のリストを並べ替えるにはどうすればよいですか?
組み込みの並べ替えユーティリティsort()を使用して、要素を並べ替えることができます。 カスタム関数を作成することもできますが、高度に最適化された組み込み関数を使用することをお勧めします。
98.文字列のリストを並べ替えると、文字列はどのように配置されますか? 文字列はアルファベット順に昇順で配置されます。
99. Javaでのthrowとthrowの違いは?
Throwは、java.lang.Throwableクラスのインスタンスを実際にスローするために使用されます。つまり、throwキーワードを使用してErrorとExceptionの両方をスローできます。
throw new IllegalArgumentException("size must be multiple of 2")
一方、throwsはメソッド宣言の一部として使用され、呼び出し元がそれらを処理できるように、このメソッドによってどの種類の例外がスローされるかを通知します。 Javaのthrows句で、未処理のチェック済み例外を宣言する必要があります。 前の質問と同様に、これはエラーと例外トピックからのもうXNUMXつのよくあるJavaインタビューの質問ですが、答えるのは簡単すぎます。
100. Javaで配列を揮発性にすることはできますか?
はい、Javaで配列を揮発性にすることができますが、配列全体ではなく、配列を指している参照のみを作成できます。 つまり、あるスレッドが参照変数を変更して別の配列を指すようにすると、揮発性の保証が提供されますが、複数のスレッドが個々の配列要素を変更している場合、揮発性修飾子によって提供される保証の前に発生することはありません。
101.キャストせずにdouble値をlong変数に格納できますか?
いいえ、doubleの範囲はlongを超えており、castと入力する必要があるため、キャストせずにdouble値をlong変数に格納することはできません。 この質問に答えるのは難しいことではありませんが、多くの開発者は、Javaでdoubleとlongのどちらが大きいかについて混乱しているために間違っています。
102.整数と整数のどちらがより多くのメモリを必要としますか?
Integerはオブジェクトであり、オブジェクトに関するメタデータオーバーヘッドを格納するため、Integerオブジェクトはより多くのメモリを使用しますが、intはプリミティブ型であるため、必要なスペースが少なくなります。
103.ネストされた静的クラスとトップレベルクラスの違いは?
パブリックトップレベルクラスは、ソースファイルの名前と同じ名前である必要があります。ネストされた静的クラスにはそのような要件はありません。 ネストされたクラスは常にトップレベルクラス内にあり、ネストされた静的クラスを参照するには、トップレベルクラスの名前を使用する必要があります。たとえば、HashMap.Entryはネストされた静的クラスであり、HashMapはトップレベルクラスであり、Entryはネストされた静的クラス。
104.最後のキーワードの用途は何ですか?
finalキーワードは、Javaでエンティティの最終状態を宣言するために使用されます。 エンティティの値は、アプリケーションの後の段階で変更することはできません。 エンティティは、変数、クラス、オブジェクトなどにすることができます。
これは、Javaアプリケーションでの不要な変更を防ぐために使用されます。
105.ディープコピーとシャローコピーの違いは何ですか?
Javaの浅いコピーは、オブジェクトのすべての値と属性を別のオブジェクトにコピーし、両方のオブジェクトが同じメモリ位置を参照します。
ディープコピーとは、コピーされるオブジェクトと同じ値と属性を持つオブジェクトを作成することですが、両方のオブジェクトが異なるメモリ位置を参照します。
106.デフォルトのコンストラクターの用途は何ですか?
デフォルトのコンストラクターは、クラスのオブジェクトが宣言されるとすぐに呼び出されるコンストラクターです。 デフォルトのコンストラクターはパラメーター化されていません。 デフォルトコンストラクタの一般的な使用法は、クラス変数の初期化です。
class ABC{ int i,j; ABC(){ i=0; j=0; } }
ここで、ABC()はデフォルトのコンストラクターです。
107.オブジェクトのクローン作成とは何ですか?
オブジェクトの複製は、クラスのオブジェクトの正確なコピーを作成するプロセスです。 新しく作成されたオブジェクトの状態は、クローン作成に使用されたオブジェクトと同じです。
clone()メソッドは、オブジェクトのクローンを作成するために使用されます。 cloneメソッドを使用して行われるクローン作成は、ディープコピーの例です。
108.なぜ静的ブロックが使用されるのですか?
これらは、静的変数を初期化するという主要な機能を果たします。 複数の静的ブロックが存在する場合、それらはトップダウン方式で書き込まれる順序で実行されます。
109. Javaでのこのキーワードの使用法は何ですか?
このキーワードは、Javaの現在のオブジェクトを使用してエンティティを参照するために使用されます。 さまざまな機能を提供する多目的キーワードです
110.JavaのStringクラスとStringBuilderクラスの違いは何ですか?
文字列は不変ですが、文字列ビルダークラスは変更可能です。 文字列ビルダークラスも同期されます。
111.オブジェクトのサイズを計算するにはどうすればよいですか?
オブジェクトのサイズは、オブジェクトがインスタンス化されたクラスの変数のサイズを合計することで計算できます。
クラスに整数とdouble変数が定義されている場合、クラスのオブジェクトのサイズはsize(int)+ size(double)です。
配列がある場合、オブジェクトのサイズは配列の長さ*配列のデータ型のサイズになります。
112. ==と.equals()の違いは何ですか?
「==」は演算子ですが、.equals()は関数です。
「==」は、参照が同じ場所を共有しているかどうかをチェックしますが、.equals()は、評価時に両方のオブジェクト値が同じであるかどうかをチェックします。
経験豊富な専門家のためのJavaインタビューの質問
1. Java におけるシリアル化とは何ですか?
オブジェクトのシリアル化は、オブジェクトの状態をバイトストリームに変換するために使用されるプロセスです。バイトストリームは、ディスク/ファイルに永続化するか、ネットワークを介して実行中の他のJava仮想マシンに送信できます。 バイトストリームからオブジェクトを作成する逆のプロセスは、逆シリアル化と呼ばれます。
2. Java の同期とは何ですか?
同期は、複数のスレッド要求によるリソースのアクセス可能性を処理するプロセスです。 同期の主な目的は、スレッドの干渉を回避することです。 複数のスレッドが共有リソースにアクセスしようとする場合、リソースが一度にXNUMXつのスレッドのみによって使用されるようにする必要があります。 これを実現するプロセスは、同期と呼ばれます。 Javaのsynchronizationキーワードは、クリティカルセクションと呼ばれるコードのブロックを作成します。
3. Java の春とは何ですか?
Spring Frameworkは、Javaプラットフォーム用のアプリケーションフレームワークおよび制御コンテナの反転です。 フレームワークのコア機能はどのJavaアプリケーションでも使用できますが、Java EE(Enterprise Edition)プラットフォーム上にWebアプリケーションを構築するための拡張機能があります。
4. Javaで不変クラスを作成するにはどうすればよいですか?
- クラスを拡張できないように、クラスをfinalとして宣言します。
- 直接アクセスが許可されないように、すべてのフィールドをプライベートにします。
- 変数のセッターメソッドを提供しないでください。
- 値をXNUMX回だけ割り当てることができるように、すべての可変フィールドをfinalにします。
- ディープコピーを実行するコンストラクターを介してすべてのフィールドを初期化します。
- getterメソッドでオブジェクトのクローンを作成して、実際のオブジェクト参照を返すのではなく、コピーを返します。
5. Java のサーブレットとは何ですか?
サーブレットは、要求/応答プログラミングモデルによってアクセスされるアプリケーションをホストするサーバーの機能を拡張するために使用されるJavaプログラミング言語クラスです。 サーブレットはあらゆるタイプの要求に応答できますが、Webサーバーによってホストされるアプリケーションを拡張するために一般的に使用されます。 このようなアプリケーションの場合、JavaサーブレットテクノロジーはHTTP固有のサーブレットクラスを定義します。
すべてのサーブレットは、ライフサイクルメソッドを定義するサーブレットインターフェイスを実装する必要があります。 汎用サービスを実装する場合、JavaサーブレットAPIで提供されるGenericServletクラスを使用または拡張できます。 HttpServletクラスは、HTTP固有のサービスを処理するためのdoGetやdoPostなどのメソッドを提供します。
6. Javaのxnameクラスとは何ですか?
(任意の)名前空間名と近くの名前で構成される拡張名。 XNameの例は変更されておらず、共有される可能性があります。
7.静的メソッドは非静的変数を参照できますか?
はい、静的メソッドは非静的変数を参照できます。 これは、変数が属するクラスのオブジェクトを作成することで実行できます。
8.静的ブロックが複数ある場合、静的ブロックはどのように実行されますか?
複数の静的ブロックは、トップダウン方式で書き込まれる順序で実行されます。 一番上のブロックが最初に実行され、次に後続のブロックが実行されます。
9.静的メソッドをオーバーライドできますか?
静的メソッドは、実行時にオブジェクトインスタンスにディスパッチされないため、オーバーライドできません。 その場合、コンパイラはどのメソッドを呼び出すかを決定します。
10.すべてのクラスはJavaでどのクラスから継承しますか?
Javaのすべてのクラスは、すべてのクラスのスーパークラスであるObjectクラスから継承します。
11. クラスローダーとは何ですか?
ClassLoaderは、クラスファイルをロードするために使用されるJVMのサブシステムです。 Javaプログラムを実行するときは常に、クラスローダーによって最初にロードされます。 JavaにはXNUMXつの組み込みクラスローダーがあります。
- ブートストラップClassLoader:これは、Extensionクラスローダーのスーパークラスである最初のクラスローダーです。 java.langパッケージクラス、java.netパッケージクラス、java.utilパッケージクラス、java.ioパッケージクラス、java.sqlパッケージクラスなど、Java StandardEditionのすべてのクラスファイルを含むrt.jarファイルをロードします。
- 拡張クラスローダー:これは、Bootstrapの子クラスローダーであり、Systemクラスローダーの親クラスローダーです。 $ JAVA_HOME / jre / lib / extディレクトリ内にあるjarファイルをロードします。
- システム/アプリケーションClassLoader:これは、Extensionクラスローダーの子クラスローダーです。 クラスパスからクラスファイルをロードします。 デフォルトでは、クラスパスは現在のディレクトリに設定されています。 「-cp」または「-classpath」スイッチを使用してクラスパスを変更できます。 したがって、アプリケーションクラスローダーとも呼ばれます。
12. Java におけるシリアライズ可能と外部化可能の違いは何ですか?
シリアル化可能なインターフェイスは、Javaクラスをシリアル化可能にして、ネットワーク経由で転送したり、状態をディスクに保存したりできるようにするために使用されますが、高価で壊れやすく、安全ではないデフォルトのシリアル化組み込みJVMを利用します。 Externalizableを使用すると、シリアル化プロセスを完全に制御し、カスタムバイナリ形式を指定して、セキュリティ対策を追加できます。
13. スイッチのケースで文字列を使用できますか?
Stringはswitchケースで使用できますが、これは単なる構文糖衣です。 スイッチには内部的に文字列ハッシュコードが使用されます。 詳細な説明と説明については、詳細な回答を参照してください。
14. オブジェクトのシリアル化と逆シリアル化とは何ですか?
java.io.Serializableを使用してオブジェクトをバイトのシーケンスに変換することは、オブジェクトのシリアル化と呼ばれます。 デシリアライズは、バイトストリームからオブジェクトの状態を回復するプロセスです。
15. Java におけるチェック例外とチェックなし例外の違いは何ですか?
チェックされた例外は、コンパイル時にコンパイラーによってチェックされます。 チェックされた例外を処理するか、throws節で宣言することは、メソッドにとって必須です。 これらは、Exceptionのサブクラスですが、RuntimeExceptionの子孫ではありません。 チェックされていない例外はRuntimeExceptionの子孫であり、コンパイル時にコンパイラによってチェックされません。 この質問は現在あまり人気がなく、投資銀行と新興企業の両方がこの質問から移動している中小企業へのインタビューでのみこれを見つけることができます。
16. ++演算子はJavaでスレッドセーフですか?
いいえ、スレッドセーフな演算子ではありません。値の読み取り、値の識別、複数のスレッド間で重複する可能性のあるメモリへの格納など、複数の命令が含まれるためです。
17. clone メソッドが含まれるクラスはどれですか?クローン可能かオブジェクトか?
java.lang.Cloneableはマーカーインターフェイスであり、オブジェクトクラスで定義されているcloneメソッドを含むメソッドは含まれていません。 また、clone()がネイティブメソッドであることは、C、C ++、またはその他のネイティブ言語で実装されていることを意味します。
Javaコーディングインタビューの質問
1. Javaのインターフェースとは何ですか?
Javaプログラミング言語のインターフェースは、クラスが実装する必要のある動作を指定するために使用される抽象型です。 それらはプロトコルに似ています。 インターフェイスはinterfaceキーワードを使用して宣言され、メソッドシグネチャと定数宣言のみを含めることができます。
2. Javaで配列を宣言するにはどうすればよいですか?
"To declare an array, define the variable type with square brackets: String[] cars;
We have now declared a variable that holds an array of strings. To insert values to it, we can use an array literal - place the values in a comma-separated list, inside curly braces: String[] cars = {""Volvo"", ""BMW"", ""Ford"", ""Mazda""};
To create an array of integers, you could write: int[] myNum = {10, 20, 30, 40};"
3. Java のポリモーフィズムとは何ですか?
ポリモーフィズムは、さまざまな方法で単一のアクションを実行できるようにするOOP機能のXNUMXつです。 たとえば、sound()メソッドを持つAnimalクラスがあるとします。 これはジェネリッククラスであるため、Roar、Meow、Oinkなどの実装を与えることはできません。ジェネリックメッセージを与える必要がありました。
public class Animal{ ... public void sound(){ System.out.println(""Animal is making a sound""); }
}
Now lets say we two subclasses of Animal class: Horse and Cat that extends (see Inheritance) Animal class. We can provide the implementation to the same method like this: public class Horse extends Animal{
... @Override public void sound(){ System.out.println(""Neigh""); }
}
and public class Cat extends Animal{
... @Override public void sound(){ System.out.println(""Meow""); }
}
As you can see that although we had the common action for all subclasses sound() but there were different ways to do the same action. This is a perfect example of polymorphism (feature that allows us to perform a single action in different ways). It would not make any sense to just call the generic sound() method as each Animal has a different sound. Thus we can say that the action this method performs is based on the type of object."
4. Javaで文字列をintに変換するにはどうすればよいですか?
"class Scratch{ public static void main(String[] args){ String str = ""50""; System.out.println( Integer.parseInt( str )); // Integer.parseInt() }
}"
5. Javaでintをstringに変換するにはどうすればよいですか?
class Convert { public static void main(String args[]) { int a = 786; int b = -986; String str1 = Integer.toString(a); String str2 = Integer.toString(b); System.out.println(""String str1 = "" + str1); System.out.println(""String str2 = "" + str2); }
6.文字列がJavaで不変であるのはなぜですか?
文字列オブジェクトは文字列プールにキャッシュされるため、文字列はJavaでは不変です。 キャッシュされた文字列リテラルは複数のクライアント間で共有されるため、あるクライアントのアクションが別のすべてのクライアントに影響を与えるリスクが常にあります。 たとえば、あるクライアントが文字列「ABC」の値を「abc」に変更すると、最初の例で説明したように、他のすべてのクライアントにもその値が表示されます。 文字列オブジェクトのキャッシュはパフォーマンス上の理由から重要であったため、文字列クラスを不変にすることでこのリスクを回避しました。 同時に、Stringはfinalにされたため、動作を拡張およびオーバーライドすることで、不変性、キャッシング、ハッシュコード計算などのStringクラスの不変条件を誰も妥協することはできません。
7. Javaで整数を文字列に変換するにはどうすればよいですか?
class ABC
{ public static void main(String args[]) { int a = 789; int b = 123; String str1 = Integer.toString(a); String str2 = Integer.toString(b); System.out.println(""String str1 = "" + str1); System.out.println(""String str2 = "" + str2); }
8. Javaプログラムをコンパイルする方法は?
コマンドプロンプトウィンドウを開き、Javaプログラムを保存したディレクトリ(MyFirstJavaProgram。java)に移動します。 …
'javacMyFirstJavaProgramと入力します。 java 'を押し、Enterキーを押してコードをコンパイルします
9. Javaで文字を文字列に変換するにはどうすればよいですか?
public class CharToStringExample2{
public static void main(String args[]){
char c='M';
String s=Character.toString(c);
System.out.println(""String is: ""+s);
}}
10. Javaのラッパークラスとは何ですか?
ラッパークラスは、プリミティブデータ型をintからIntegerなどのオブジェクトに変換するために使用されます。
11. Javaでマップを反復するにはどうすればよいですか?
import java.util.Map; import java.util.HashMap; class IterationDemo { public static void main(String[] arg) { Map<String,String> m = new HashMap<String,String>(); // enter name/url pair m.put(""a"", 1); m.put(""b"", 2); m.put(""c"", 3); m.put(""d"", 4); // using for-each loop for iteration over Map.entrySet() for (Map.Entry<String,String> entry : m.entrySet()) System.out.println(""Key = "" + entry.getKey() + "", Value = "" + entry.getValue()); } }
12. Javaでcharをintに変換する方法は?
public class JavaExample{ public static void main(String args[]){ char ch = '10'; int num = Integer.parseInt(String.valueOf(ch)); System.out.println(num); }
}
13. Javaのインターフェースとは何ですか?
Javaのインターフェースはクラスに似ていますが、インターフェースの本体には抽象メソッドと最終フィールド(定数)のみを含めることができます。 クラスは、インターフェイスによって宣言された各メソッドにコードを提供することにより、インターフェイスを実装します。
14. Javaで文字列を分割するにはどうすればよいですか?
String string = ""004-034556"";
String[] parts = string.split(""-"");
String part1 = parts[0]; // 004
String part2 = parts[1]; // 034556
14. Javaでファイルを読み取る方法は?
import java.io.*; public class Read { public static void main(String[] args)throws Exception { File file = new File(""C:\Users\LBL\Desktop\test.txt""); BufferedReader br = new BufferedReader(new FileReader(file)); String st; while ((st = br.readLine()) != null) System.out.println(st); } }
15. Javaでスキャナーを使用するにはどうすればよいですか?
import java.util.Scanner; class classname{ public methodname(){ //Scanner declaration Scanner s_name = new Scanner(System.in); //Use Scanner to take input int val = s_name.nextInt(); }
}
16. Javaで数値を逆にする方法は?
class Reverse
{ public static void main(String args[]) { int num=564; int reverse =0; while( num != 0 ) { reverse = reverse * 10; reverse = reverse + num%10; num = num/10; } System.out.println(""Reverse is: ""+reverse); }
}
17. Javaのインスタンスとは何ですか?
Javaのインスタンス変数は、オブジェクトが状態を格納するために使用します。 STATICキーワードなしで定義され、メソッド宣言の外側にある変数はオブジェクト固有であり、インスタンス変数と呼ばれます。 それらの値はインスタンス固有であり、インスタンス間で共有されないため、これらはそのように呼ばれます。
18. Javaでchar配列を文字列に変換するにはどうすればよいですか?
class CharArrayToString
{ public static void main(String args[]) { // Method 1: Using String object char[] ch = {'g', 'o', 'o', 'd', ' ', 'm', 'o', 'r', 'n', 'i', 'n', 'g'}; String str = new String(ch); System.out.println(str); // Method 2: Using valueOf method String str2 = String.valueOf(ch); System.out.println(str2); }
}
19. JavaのMavenとは何ですか?
Mavenは、POM(プロジェクトオブジェクトモデル)に基づく強力なプロジェクト管理ツールです。 プロジェクトのビルド、依存関係、およびドキュメント化に使用されます。
ANTのようなビルドプロセスを簡素化します。 しかし、それはANTよりもはるかに進んでいます。
20. Javaの配列とは何ですか?
配列は、単一の型の値を固定数保持するコンテナオブジェクトです。 配列の長さは、配列の作成時に確立されます。 作成後、その長さは固定されます。 「HelloWorld!」のメインメソッドで、配列の例をすでに見てきました。 申し込み。
21. Javaのアプレットとは何ですか?
アプレットは、Java対応のブラウザで実行される特別な種類のJavaプログラムです。 これは、ブラウザを使用してネットワーク上で実行できる最初のJavaプログラムです。 アプレットは通常、Webページ内に埋め込まれ、ブラウザで実行されます。
言い換えると、アプレットは、インターネットサーバー上でアクセスでき、インターネット経由で転送でき、Webドキュメントの一部として自動的にインストールして実行できる小さなJavaアプリケーションであると言えます。
22. Javaでオーバーライドするメソッドとは何ですか?
class Human{ //Overridden method public void eat() { System.out.println(""Human is eating""); }
}
class Boy extends Human{ //Overriding method public void eat(){ System.out.println(""Boy is eating""); } public static void main( String args[]) { Boy obj = new Boy(); //This will call the child class version of eat() obj.eat(); }
}
22. Javaがインストールされているかどうかを確認する方法は?
- [スタート]ボタンをクリック
- コントロールパネルを選択
- プログラムを選択
- [プログラムと機能]をクリックします
- インストールされているJavaのバージョンが一覧表示されます
23. Javaで配列を返す方法は?
import java.util.*;
public class Main
{
public static String[] return_Array() { //define string array String[] ret_Array = {""Java"", ""C++"", ""Python"", ""Ruby"", ""C""}; //return string array return ret_Array; } public static void main(String args[]) { //call method return_array that returns array String[] str_Array = return_Array(); System.out.println(""Array returned from method:"" + Arrays.toString(str_Array)); }
}
24. Javaで乱数を生成するにはどうすればよいですか?
public static double getRandomNumber(){ double x = Math.random(); return x;
}
25. Javaのジェネリックとは何ですか?
ジェネリックスを使用すると、クラス、インターフェイス、およびメソッドを定義するときに、型(クラスとインターフェイス)をパラメーターにすることができます。 メソッド宣言で使用されるより馴染みのある仮パラメーターと同様に、型パラメーターは、同じコードを異なる入力で再利用する方法を提供します。 違いは、仮パラメーターへの入力が値であるのに対し、型パラメーターへの入力は型であるということです。
26. javaのコンストラクターとは何ですか?
Javaのコンストラクターは、オブジェクトを初期化するために使用される特別なメソッドです。 コンストラクターは、クラスのオブジェクトが作成されるときに呼び出されます。
27. Javaで配列の長さを調べる方法は?
class ArrayLengthFinder { public static void main(String[] arr) { // declare an array int[] array = new int[10]; array[0] = 12; array[1] = -4; array[2] = 1; // get the length of array int length = array.length; System.out.println(""Length of array is: "" + length); }
}
28. Java におけるオーバーライドとは何ですか?
メソッドのオーバーライドは、より具体的な定義を持つ派生クラスのメソッドによって基本クラスのメソッドをオーバーライドするプロセスです。
メソッドのオーバーライドは、XNUMXつのクラスにis-a関係がある場合にのみ実行されます。 これは、クラスに継承が必要であることを意味します。 つまり、継承関係を使用してXNUMXつのクラス間で実行されます。
オーバーライドする場合、両方のクラスのメソッドは同じ名前と同じ数のパラメーターを持っている必要があります。
メソッドのオーバーライドは、実行時に呼び出し元のメソッドがJVMによって決定されるため、ランタイムポリモーフィズムとも呼ばれます。
オーバーライドの主な利点は、特定のサブクラスタイプに固有のメソッドを定義できることです。
29. Javaでファイルを作成するにはどうすればよいですか?
テキストファイルを開き、拡張子.javaを付けて保存します。
30. Javaのインスタンス変数とは何ですか?
Javaのインスタンス変数は、オブジェクトが状態を格納するために使用します。 STATICキーワードなしで定義され、メソッド宣言の外側にある変数はオブジェクト固有であり、インスタンス変数と呼ばれます。 それらの値はインスタンス固有であり、インスタンス間で共有されないため、これらはそのように呼ばれます。
31. Javaでハッシュマップを反復する方法は?
import java.util.Map; import java.util.HashMap; class IterationDemo { public static void main(String[] arg) { Map<String,String> g = new HashMap<String,String>(); // enter name/url pair g.put(""1"":""One""); g.put(""2"":""Two""); // using for-each loop for iteration over Map.entrySet() for (Map.Entry<String,String> entry : g.entrySet()) System.out.println(""Key = "" + entry.getKey() + "", Value = "" + entry.getValue()); } }
32. Javaで文字列を分割するにはどうすればよいですか?
public class JavaExample{ public static void main(String args[]){ String s = "" ,ab;gh,bc;pq#kk$bb""; String[] str = s.split(""[,;#$]""); //Total how many substrings? The array length System.out.println(""Number of substrings: ""+str.length); for (int i=0; i < str.length; i++) { System.out.println(""Str[""+i+""]:""+str[i]); } }
}
33. Javaで配列をソートする方法は?
public class InsertSort { public static void main (String [] args) { int [] array = {10,20,30,60,70,80,2,3,1}; int temp; for (int i = 1; i < array.length; i++) { for (int j = i; j > 0; j--) { if (array[j] < array [j - 1]) { temp = array[j]; array[j] = array[j - 1]; array[j - 1] = temp; } } } for (int i = 0; i < array.length; i++) { System.out.println(array[i]); } }
}
34.メインメソッドがJavaで静的であるのはなぜですか?
Java main()メソッドは常に静的であるため、コンパイラーはオブジェクトを作成せずに、またはクラスのオブジェクトを作成する前に呼び出すことができます。 どのJavaプログラムでも、main()メソッドは、コンパイラーがプログラムの実行を開始する開始点です。 したがって、コンパイラはmain()メソッドを呼び出す必要があります。
35. Javaの文字列を単語ごとに逆にする方法は?
import java.util.*;
class ReverseString
{ public static void main(String args[]) { String original, reverse = """"; Scanner in = new Scanner(System.in); System.out.println(""Enter a string to reverse""); original = in.nextLine(); int length = original.length(); for (int i = length - 1 ; i >= 0 ; i--) reverse = reverse + original.charAt(i); System.out.println(""Reverse of the string: "" + reverse); }
}
36. Javaで文字列を日付に変換するにはどうすればよいですか?
String string = ""January 2, 2010"";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(""MMMM d, yyyy"", Locale.ENGLISH);
LocalDate date = LocalDate.parse(string, formatter);
System.out.println(date); // 2010-01-02
37. Javaで文字列を読み取る方法は?
Scanner sc= new Scanner(System.in); //System.in is a standard input stream.
System.out.print(""Enter a string: "");
String str= sc.nextLine(); //reads string.
38. Javaで文字列を整数に変換する方法は?
String string1 = ""100"";
String string2 = ""50"";
String string3 = ""20""; int number1 = Integer.decode(string1);
int number2 = Integer.decode(string2); int number3 = Integer.decode(string3); System.out.println(""Parsing String """" + string1 + """": "" + number2);
System.out.println(""Parsing String """" + string2 + """": "" + number2);
System.out.println(""Parsing String """" + string3 + """": "" + number3);
39. Javaでarraylistをソートする方法は?
import java.util.*;
public class ArrayListOfInteger { public static void main(String args[]){ ArrayList<Integer> arraylist = new ArrayList<Integer>(); arraylist.add(11); arraylist.add(2); arraylist.add(7); arraylist.add(3); /* ArrayList before the sorting*/ System.out.println(""Before Sorting:""); for(int counter: arraylist){ System.out.println(counter); } /* Sorting of arraylist using Collections.sort*/ Collections.sort(arraylist); /* ArrayList after sorting*/ System.out.println(""After Sorting:""); for(int counter: arraylist){ System.out.println(counter); } }
}
40. Javaで文字列の長さを見つける方法は?
Javaで文字列の長さを計算するには、Java文字列クラスの組み込みのlength()メソッドを使用できます。
Javaでは、文字列は文字列クラスを使用して作成されたオブジェクトであり、length()メソッドはこのクラスのパブリックメンバーメソッドです。 したがって、文字列型の変数はすべて、を使用してこのメソッドにアクセスできます。 (ドット)演算子。
length()メソッドは、文字列内の文字の総数をカウントします。
41. Javaのデータ型とは何ですか?
Javaのデータ型は、Javaの変数が格納できる値の型を指定します。
42. Javaのハッシュマップとは何ですか?
HashMapは、キーと値のペアを格納するために使用されるマップベースのコレクションクラスであり、HashMapとして示されます。 またはHashMap 。 このクラスは、マップの順序について保証するものではありません。 同期されておらず、null(null値とnullキー)を許可することを除いて、Hashtableクラスに似ています。
43. Javaのストリームとは何ですか?
Javaのストリームは、ソースからの要素のシーケンスとして定義できます。 Streamsは、要素に対する集約操作をサポートします。 ここでの要素のソースは、ストリームにデータを提供するコレクションまたは配列を指します。
Streamは、要素の順序をソースの順序と同じに保ちます。 集約操作は、ストリーム要素に対する一般的な操作をすばやく明確に表現できるようにする操作です。
44. Javaでdoubleをstringに変換する方法は?
public class D2S{
public static void main(String args[]){
double d=1.2222222;
String s=Double. toString(d);
System. out. println(s);
}}
45. Javaで配列を宣言するにはどうすればよいですか?
int arr[]=new int[10];
46. Javaで文字列の文字を置き換える方法は?
String replace(char oldChar、char newChar):すべての出現箇所のoldChar文字をnewChar文字に置き換えます。 たとえば、「pog pance」.replace( 'p'、 'd')は、犬のダンスを返します。
47. Javaのラムダ式とは何ですか?
ラムダ式(lambda)は、後続の実行のためにコンストラクターまたはメソッドに渡すことができるコードのブロック(無名関数)を記述します。 コンストラクターまたはメソッドは、ラムダを引数として受け取ります。 次の例を考えてみましょう。
System.out.println( "Hello")
この例では、メッセージを標準出力ストリームに出力するためのラムダを識別します。 左から右に、()はラムダの正式なパラメーターリストを識別し(例にはパラメーターはありません)、->は式がラムダであることを示し、System.out.println( "Hello")は実行されるコードです。
48.マイクロサービスJavaとは何ですか?
マイクロサービスはサービス指向アーキテクチャ スタイル (Java 開発者にとって最も重要なスキルの 1 つ) の一種であり、アプリケーションは 1 つのアプリ全体ではなく、さまざまな小さなサービスの集合として構築されます。
49. Javaのjspとは何ですか?
JSPページは、テキストベースの形式(HTML、SVG、WML、XMLなど)で表現できる静的データと動的コンテンツを構成するJSP要素のXNUMX種類のテキストを含むテキストドキュメントです。
JSPページのソースファイルに推奨されるファイル拡張子は.jspです。 このページは、完全なJSPページまたはJSPページのフラグメントのいずれかを含む他のファイルを含むトップファイルで構成できます。 JSPページのフラグメントのソースファイルに推奨される拡張子は.jspfです。
JSPページのJSP要素は、標準とXMLのXNUMXつの構文で表現できますが、特定のファイルで使用できる構文はXNUMXつだけです。 XML構文のJSPページはXMLドキュメントであり、XMLドキュメントのツールとAPIによって操作できます。
50. javaでのコンストラクターの使用は何ですか?
コンストラクターは、新しく作成されたオブジェクトを初期化するコードのブロックです。 コンストラクターはJavaのインスタンスメソッドに似ていますが、戻り型がないためメソッドではありません。 要するに、コンストラクターとメソッドは異なります(これについてはこのガイドの最後で詳しく説明します)。 コンストラクターは、Javaの特殊なタイプのメソッドと呼ばれることがよくあります。
コンストラクターはクラスと同じ名前で、Javaコードでは次のようになります。
51. Javaでリストを配列に変換する方法は?
Javaでリストを配列に変換する最も簡単な方法は、.toArray()メソッドを使用することです。
同様に、Arrays.asList()メソッドを使用して、リストを配列に戻すことができます。
以下の例は、文字列のリストと整数のリストを同等の配列に変換する方法を示しています。
Convert List to Array of String
import java.util.ArrayList;
import java.util.List; public class ConvertArrayListToArray { public static void main(String[] args) { List<String> itemList = new ArrayList<String>(); itemList.add(""item1""); itemList.add(""item2""); itemList.add(""item3""); String[] itemsArray = new String[itemList.size()]; itemsArray = itemList.toArray(itemsArray); for(String s : itemsArray) System.out.println(s); }
}"
52. Javaでオブジェクトを作成する方法はいくつありますか?
Javaでオブジェクトを作成するには、次のXNUMXつの方法があります。
- Javaの新しい演算子
- Javaクラス。 newInstance()メソッド
- コンストラクターのJavanewInstance()メソッド
- Javaオブジェクト。 clone()メソッド
- Javaオブジェクトのシリアル化と逆シリアル化
53. Javaが機能するようになるのはなぜですか(java 8)?
Java 8は、ラムダ式と呼ばれるものを介して関数型プログラミングを追加します。これは、指定された変数の任意のセットに対する操作として関数を記述する簡単な方法です。
54. Javaでサポートされていない継承はどれですか?
多重継承はJavaではサポートされていません。
55. Javaでdoubleをintに変換する方法は?
double d=1.2
int i=int(d)
56. JavaでcharのASCII値を取得するにはどうすればよいですか?
char character = 'a'; int ascii = (int) character;
あなたの場合、最初に文字列から特定の文字を取得してからキャストする必要があります。
char character = name.charAt(0); // This gives the character 'a'
int ascii = (int) character; // ascii is now 97.
57. Javaで文字列配列を宣言するにはどうすればよいですか?
String[] array = new String[] {"a", "b"};
58. Javaのマーカーインターフェイスとは何ですか?
Javaの空のインターフェイスは、マーカーインターフェイスと呼ばれます。つまり、これらのインターフェイスを実装することでメソッドやフィールドが含まれず、クラスは実装されたインターフェイスに関して特別な動作を示します。 Javaのマーカーインターフェイス(Serializable、Cloneable、Remoteなど)を注意深く見ると、コンパイラーまたはJVMに何かを示すために使用されているように見えます。 したがって、JVMがクラスがシリアライズ可能であることを確認すると、特別な操作を実行します。同様に、JVMがXNUMXつのクラスがClonnableを実装していることを確認した場合、クローン作成をサポートするための操作を実行します。 RMIとリモートインターフェイスについても同じことが言えます。 最も単純なマーカーインターフェイスでは、コンパイラまたはJVMに指示、信号、またはコマンドを送信します。
–>実際には、メソッド宣言のないマーカーインターフェイスのようなインターフェイスを作成できますが、プログラムの実行時にクラスに特別な動作を提供するJVMに何かを指示していないため、マーカーインターフェイスではありません。 。
たとえば、Serializable、Cloneableなどはマーカーインターフェイスです
プログラムが実行されると、JVMはマーカーインターフェイスを実装したクラスにいくつかの特別な機能を提供します。
59.スキャナーを使用してJavaで複数の文字列入力を取得するにはどうすればよいですか?
class MyClass { public static void main(String[ ] args) { Scanner a = new Scanner(System.in); //Scanner b = new Scanner(System.in); System.out.println (a.nextLine()); System.out.println(a.nextLine()); }
} Then type this way:
a
b
60. JavaでXNUMXつの文字列を連結するにはどうすればよいですか?
s3 = s1 + s2ここで、s1とs2はJava文字列です。
61. Javaで文字列をchar配列に変換するにはどうすればよいですか?
public class StringToCharArrayExample{ public static void main(String args[]){ String s1=""hello""; char[] ch=s1.toCharArray(); for(int i=0;i<ch.length;i++){ System.out.print(ch[i]); } }}
62. Javaでの型キャストとは何ですか?
あるデータ型(int、float、doubleなど)の値を別のデータ型に変換するプロセスは、型キャストと呼ばれます。
63. Javaで文字列をソートする方法は?
import java.util.Arrays; public class Test
{ public static void main(String[] args) { String original = ""edcba""; char[] chars = original.toCharArray(); Arrays.sort(chars); String sorted = new String(chars); System.out.println(sorted); }
}
64. Javaで文字列を入力する方法は?
import java.util.*; class Inp
{ public static void main(String[] args) { Scanner sc= new Scanner(System.in); //System.in is a standard input stream System.out.print(""Enter a string: ""); String str= sc.nextLine(); //reads string System.out.print(""You have entered: ""+str); } }
65. Javaでスキャナーをインポートする方法は?
import java.utils.Scanner
Scanner sc=new Scanner();
66. Javaで文字列から特殊文字を削除するにはどうすればよいですか?
class New { public static void main(String args[]) { String str= ""This#string%contains^special*characters&.""; str = str.replaceAll(""[^a-zA-Z0-9]"", "" ""); System.out.println(str); } }
67. Javaで文字列の長さを見つける方法は?
Javaで文字列の長さを計算するには、Java文字列クラスに組み込まれているlength()手法を利用できます。
Javaでは、文字列は文字列クラスを利用して作成されたオブジェクトであり、length()戦略はこのクラスのオープンパーツ手法です。 これらの線に沿って、文字列型の任意の要素は、を利用してこの戦略に到達できます。 (ドット)管理者。
length()テクニックは、文字列内のすべての文字数を集計します。
68. Javaで配列に要素を追加するにはどうすればよいですか?
配列をarraylistに変換します。 次に、要素を追加できます。
69. Javaでの例外処理とは何ですか?
Javaでの例外処理は、何らかの障害が発生した場合でもプログラムを実行し続ける方法です。 例外は、プログラムの実行中に発生する可能性があり、通常のフローを中断させるエラーイベントです。 Javaは、Java例外処理と呼ばれる、例外シナリオを処理するための堅牢でオブジェクト指向の方法を提供します。
70. Javaで文字列をスキャンする方法は?
import java.util.*;
public class ScannerExample {
public static void main(String args[]){
Scanner in = new Scanner(System.in);
System.out.print(""Enter your name: "");
String name = in.nextLine();
System.out.println(""Name is: "" + name);
in.close();
71.例を使用して、Javaで比較可能コンパレータを使用するのはいつですか。
別の並べ替え順序が必要な場合は、コンパレータを実装して、XNUMXつのインスタンスを比較する独自の方法を定義できます。 オブジェクトの並べ替えを自然な順序に基づく必要がある場合は、Comparableを使用します。一方、並べ替えを異なるオブジェクトの属性で行う必要がある場合は、JavaのComparatorを使用します。
72. Javaでjarファイルを作成するにはどうすればよいですか?
JARファイルを作成するためのコマンドの基本的な形式は次のとおりです。
jar cf jar-file input-file(s)
このコマンドで使用されるオプションと引数は次のとおりです。
- cオプションは、JARファイルを作成することを示します
- fオプションは、出力をstdoutではなくファイルに送信することを示します。
jar-fileは、結果のJARファイルに付ける名前です。 JARファイルには任意のファイル名を使用できます。 慣例により、JARファイル名には.jar拡張子が付けられますが、これは必須ではありません。
input-file(s)引数は、JARファイルに含めるXNUMXつ以上のファイルのスペースで区切られたリストです。 input-file(s)引数には、ワイルドカード*記号を含めることができます。 「入力ファイル」のいずれかがディレクトリである場合、それらのディレクトリの内容はJARアーカイブに再帰的に追加されます。
cオプションとfオプションはどちらの順序でも表示できますが、間にスペースを入れてはなりません。
73. Javaでメソッドを呼び出す方法は?
Javaでメソッドを呼び出すには、メソッドの名前の後にXNUMXつの括弧()とセミコロンを続けて記述します。 メソッド呼び出しのプロセスは単純です。 プログラムがメソッドを呼び出すと、プログラム制御は呼び出されたメソッドに移されます。
74. Javaのnext()とnextline()の違いは何ですか?
next()は、スペースまでしか入力を読み取ることができません。 スペースで区切られたXNUMXつの単語を読み取ることはできません。 また、next()は、入力を読み取った後、カーソルを同じ行に配置します。 nextLine()は、単語間のスペースを含む入力を読み取ります(つまり、行nの終わりまで読み取ります)。
75. JavaのMVCとは何ですか?
MVCパターンは、Model-View-Controllerパターンを表します。 この例は、アプリケーションの利益を分離するために使用されます。 モデル–モデルは、情報を伝達するアイテムまたはJAVAPOJOと通信します。 同様に、情報が変更された場合にレギュレーターを更新する理由があります。
76. Javaでマップを反復する方法は?
for (Map.Entry<Integer, String> entry : hm.entrySet()) { Integer key = entry.getKey(); String value = entry.getValue(); }
77. Javaのダイヤモンドの問題は何ですか?
「ダイヤモンドの問題」は、さまざまな遺産を許可した結果として生じる可能性のある不確実性です。 これは、州の多くの遺産を考慮に入れる方言(C ++など)にとって重要な問題です。 それにもかかわらず、Javaでは、多くのレガシーは、インターフェースのためだけにクラスを考慮に入れておらず、これらには状態が含まれていません。
78. JavaでXNUMXつの文字列を交換するにはどうすればよいですか?
String a = ""one"";
String b = ""two""; a = a + b;
b = a.substring(0, (a.length() - b.length()));
a = a.substring(b.length()); System.out.println(""a = "" + a);
System.out.println(""b = "" + b);
79. yyyy-mm-dd形式のJavaで文字列を日付に変換するにはどうすればよいですか?
String start_dt = ""2011-01-01"";
DateFormat formatter = new SimpleDateFormat(""yyyy-MM-DD""); Date date = (Date)formatter.parse(start_dt);
SimpleDateFormat newFormat = new SimpleDateFormat(""MM-dd-yyyy"");
String finalString = newFormat.format(date);
80.例を挙げたJavaのgetnameとは何ですか?
import java.io.*; public class solution { public static void main(String args[]) { // try-catch block to handle exceptions try { // Create a file object File f = new File(""new.txt""); // Get the Name of the given file f String Name = f.getName(); // Display the file Name of the file object System.out.println(""File Name : "" + Name); } catch (Exception e) { System.err.println(e.getMessage()); } } }
getNameは、ファイルの名前を返します。
81. Javaのbufferreaderとは何ですか?
Java.io.BufferedReaderクラスは、文字入力ストリームからのテキストを熟読し、文字、クラスター、および行の熟読に対応するために文字をバッファリングします。 以下は、BufferedReaderの重要な焦点です-クレードルサイズが決定されるか、デフォルトサイズが利用される可能性があります。
82. Javaでパッケージを作成するにはどうすればよいですか?
バンドルを作成するには、バンドルの名前を選択し(ネーミングショーについては次の領域で説明します)、ソート(クラス、インターフェイス、リスト、および説明タイプ)バンドルについて覚えておく必要があります。
83. Javaでの集約とは何ですか?
アグリゲーションの場合は、学校が閉鎖されたときの学校のクラスの生徒です。すべてが存在しているにもかかわらず、生徒は別の学校などに参加できます。 UMLのドキュメントでは、構造は充填された宝石で示され、礫岩は充填されていない宝石で示されます。これは、関係の質に関する紛れもない区別を示しています。
84. Javaでswitchcaseを使用するにはどうすればよいですか?
int amount = 9; switch(amount) { case 0 : System.out.println(""amount is 0""); break; case 5 : System.out.println(""amount is 5""); break; case 10 : System.out.println(""amount is 10""); break; default : System.out.println(""amount is something else"");
}
85. Javaの再帰とは何ですか?
再帰は、単に容量の決定自体を決定する戦略です。 この方法は、絡み合った問題を、解決がより簡単な単純な問題に分離するためのアプローチを提供します。
86. Javaで配列を出力する方法は?
System.out.println(Arrays.toString(a));
87. Javaでの自動ボックス化とボックス化解除とは何ですか?
オートボクシングは、Javaコンパイラがプリミティブ型とそれに対応するオブジェクトラッパークラスの間で行う自動変換です。 たとえば、intを整数に、doubleをDoubleに変換するなどです。 変換が逆の場合、これは開箱と呼ばれます。
88. Javaコンストラクターは値を返しますが、何ですか?
Javaコンストラクタは値を返しません。
89. Javaでのメソッドのオーバーロードとは何ですか?
メソッドのオーバーロードは、引数リストが異なる場合に、クラスが同じ名前を持つ複数のメソッドを持つことを可能にする機能です。 これは、Javaでのコンストラクターのオーバーロードに似ており、クラスに異なる引数リストを持つ複数のコンストラクターを含めることができます。
90. Javaでオブジェクトの配列を作成するにはどうすればよいですか?
オブジェクトの配列を初期化するXNUMXつの方法は、コンストラクターを使用することです。 実際のオブジェクトを作成するときは、コンストラクターに値を渡すことで、各オブジェクトに初期値を割り当てることができます。 オブジェクトにデータを割り当てるクラスに、個別のメンバーメソッドを含めることもできます。
91. Javaで抽象クラスとインターフェイスを使用するのはいつですか?
Javaには、クラスやその他のエンティティで使用できるXNUMX種類のアクセス指定子が用意されています。
これらは、次のとおりです。
#1)デフォルト:特定のアクセスレベルが指定されていない場合は常に、「デフォルト」と見なされます。 デフォルトレベルのスコープはパッケージ内にあります。
#2)パブリック:これは最も一般的なアクセスレベルであり、パブリックアクセス指定子がエンティティで使用される場合は常に、その特定のエンティティは、クラスの内外、パッケージの内外などからアクセスできます。
#3)保護:保護されたアクセスレベルには、パッケージ内のスコープがあります。 保護されたエンティティは、継承されたクラスまたは子クラスを介してパッケージの外部からもアクセスできます。
#4)プライベート:エンティティがプライベートの場合、このエンティティはクラスの外部からアクセスできません。 プライベートエンティティには、クラス内からのみアクセスできます。
92. Javaでシングルトンクラスを作成するにはどうすればよいですか?
シングルトンクラスとは、特定のクラスに対してXNUMXつのオブジェクトしか作成できないことを意味します。 オブジェクトの作成を制限できるように、コンストラクターをプライベートとして作成することにより、シングルトンクラスを作成できます。 オブジェクトのインスタンスを取得するための静的メソッドを提供します。このメソッドでは、クラス内でのみオブジェクトの作成を処理できます。 この例では、静的ブロックを使用してオブジェクトを作成しています。
public class MySingleton { private static MySingleton myObj; static{ myObj = new MySingleton(); } private MySingleton(){ } public static MySingleton getInstance(){ return myObj; } public void testMe(){ System.out.println(""Hey.... it is working!!!""); } public static void main(String a[]){ MySingleton ms = getInstance(); ms.testMe(); }
}
93. Javaの静的メソッドとは何ですか?
JavaプログラミングJava8オブジェクト指向プログラミング。 staticキーワードは、クラス用に作成されたインスタンスとは独立して存在するメソッドを作成するために使用されます。 静的メソッドは、それらが定義されているクラスのオブジェクトのインスタンス変数を使用しません。
94. Javaの例外処理機構について説明してください。
例外クラスは、JavaのThrowableクラスから継承します。 Javaには、例外をエラーとして生成せずに処理するためのtry-catchメカニズムがあります。
public class Exception_Handling { String gender; Exception_Handling(String s){ gender=s; } void Check_Gender(String s) throws GenderException{ if (gender!="Male" || gender!="Female") throw new GenderException("Gender Invalid"); else System.out.println("Gender valid"); } public static void main(String args[]){ Exception_Handling n=new Exception_Handling("None"); try{ n.Check_Gender("Female"); }catch (Exception e){ System.out.println("Exception : "+e); } } } class GenderException extends Exception{ GenderException(String s){ super(s); } }
95. 配列リストはいつ使用しますか?
Javaの要素にランダムアクセスする必要があるときはいつでも、ArrayListを使用します。 getメソッドとsetメソッドは、配列リストを使用して要素への非常に高速なアクセスを提供します。
96. Java でのジェネリックの使用法は何ですか?
ジェネリックスを使用すると、クラスとインターフェイスをJavaで新しいクラスを定義するための型にすることができ、より強力な型チェックが可能になります。 また、挿入中のデータの型の不一致の可能性を無効にします。
97.イテレータとは何ですか?
イテレータは、要素の順次アクセスを可能にするコレクションフレームワーク機能です。 アクセスは一方向にのみ行うことができます。 Javaは、次のXNUMX種類のイテレータをサポートしています。
1.列挙型イテレータ
2.リストイテレータ
98. ハッシュマップとは何ですか?
ハッシュマップは、データをキーと値のペアに格納するために使用されるコレクションフレームワーク機能です。 データにアクセスするには、キーが必要です。 ハッシュマップは、ストレージ機能をサポートするために内部的にリンクリストを使用します。
99.スタックとは何ですか?
スタックは、後入れ先出し方式をサポートするデータ構造です。 最後にプッシュされた要素はスタックの一番上にあります。 スタックは次の機能をサポートします。
- プッシュ-要素をスタックにプッシュする操作
- スタックから要素をプッシュするポップ操作
- ピーク-一番上の要素をチェックするオプション
100.ツリーマップとは何ですか?
Treemapは、赤と黒の木の概念に基づいて構築されたJavaでのナビゲート可能なマップ解釈です。 ツリーマップのキーは、キーの昇順で並べ替えられます。
101.ベクトルとは何ですか?
ベクトルは、Javaのデータ構造のようなArrayListであり、そのサイズは要求に応じて増加します。 さらに、コレクションでサポートされていない一部のレガシー関数もサポートします。
また、コレクションオブジェクトとは異なり、ベクターはスレッドの操作に適していることも知っておく必要があります。
102. ArrayListとvectorの違いは何ですか?
ArrayListは、スレッドベースの環境での作業には適していません。 ベクトルは、スレッドベースの実行用に構築されています。 ArrayListはレガシー関数をサポートしていませんが、ベクターはレガシー関数をサポートしています。
103.Javaで数値の階乗を計算するプログラムを作成します。
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int fact=1; int n=sc.nextInt(); for (int i=1;i<=n;i++) fact=fact*i; System.out.println(fact); } }
104.数が素数であるかどうかをチェックするプログラムを作成します。
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int count=0; for (int i=1;i<=n;i++) { if (n%i==0) count++; } if (count==2) System.out.println("Prime"); else System.out.println("Not Prime"); } }
105進数をXNUMX進数に変換するプログラムを作成します。
import java.util.Scanner; class star { public static void main(String arg[]) { Scanner sc=new Scanner(System.in); System.out.println("Enter a decimal number"); int n=sc.nextInt(); int bin[]=new int[100]; int i = 0; while(n > 0) { bin[i++] = n%2; n = n/2; } System.out.print("Binary number is : "); for(int j = i-1;j >= 0;j--) { System.out.print(bin[j]); } } }
106進数をXNUMX進数に変換するプログラムを作成します。
import java.util.Scanner; class star { public static void main(String args[]) { Scanner sc = new Scanner( System.in ); System.out.print("Enter a decimal number : "); int num =sc.nextInt(); String octal = Integer.toOctalString(num); System.out.println("Decimal to octal: " + octal); } }
107.文字列内の特定の場所にある文字を抽出するために使用できるユーティリティ関数はどれですか?
charAt()ユーティリティ関数を使用して、上記の機能を実現できます。
108. Javaで文字列の長さを取得するにはどうすればよいですか?
Javaの文字列の長さは、.length()ユーティリティを使用して確認できます。
109.配列を定義するための次の構文のどれが正しいですか?
– int [] = new int [];
– int a [] = new int [];
– int a [] = new int [32]
int a [] = new int [32]が正しい方法です。
110.これは3 * 0.1 == 0.3を返しますか? 正しいか間違っているか?
これは本当にトリッキーな質問のXNUMXつであり、概念が非常に明確である場合にのみ答えることができます。 一部の浮動小数点数は正確に表現できないため、短い答えは誤りです。
111.Javaの配列でバブルソートを実行するプログラムを作成します。
import java.util.Scanner; class star { public static void main(String args[]) { int arr[] =new int [10]; Scanner sc = new Scanner( System.in ); System.out.println("Enter size of array"); int n=sc.nextInt(); System.out.print("Enter an arry : "); for (int i=0;i<n;i++) arr[i]=sc.nextInt(); for (int i=0;i<n;i++) { for (int j=0;j<n-i-1;j++) { if (arr[j]>arr[j+1]) { int t=arr[j]; arr[j]=arr[j+1]; arr[j+1]=t; } } } for (int i=0;i<n;i++) { System.out.println(arr[i]); } } }
112.Javaで次の出力を生成するプログラムを作成します?
*
**
****
*****
******
public class star { public static void main(String[] args) { int i; int count=1; for (i=1;i<=5;i++){ for (int j=1;j<=i;j++) System.out.print("*"); System.out.println(" "); } } }
113.次の出力を生成するプログラムを作成します。
****
***
**
*
public class star { public static void main(String[] args) { int i; int count=1; for (i=5;i>=1;i--){ for (int j=1;j<=i;j++) System.out.print("*"); System.out.println(" "); } } }
114.文字列からすべての母音を削除するプログラムをJavaで記述します。
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String n=sc.nextLine(); String n1=n.replaceAll("[AEIOUaeiou]", ""); System.out.println(n1); } }
115.回文をチェックするプログラムをJavaで作成します。
String str, rev = ""; Scanner sc = new Scanner(System.in); System.out.println("Enter a string:"); str = sc.nextLine(); int length = str.length(); for ( int i = length - 1; i >= 0; i-- ) rev = rev + str.charAt(i); if (str.equals(rev)) System.out.println(str+" is a palindrome"); else System.out.println(str+" is not a palindrome");
116. Javaの組み込みソートの基礎となるメカニズムは何ですか?
Javaの組み込みのソート関数は、XNUMXつのピボットクイックソートメカニズムを利用します。 クイックソートは、ほとんどの実際のシナリオで最適に機能し、追加のスペース要件はありません。
117. ArrayList内の要素の存在をチェックするために使用されるユーティリティ関数はどれですか?
hasNext()は、ArrayList内の次の要素の存在に使用されます。
118.配列から要素を削除するにはどうすればよいですか?
配列から要素を削除するには、最初に要素を削除する必要があります。次に、要素の右側にある配列要素をXNUMX桁左にシフトします。
119. a = a + bとa + = bの違いは?
+ =演算子は、加算の結果を、結果を保持するために使用される変数の型に暗黙的にキャストします。 XNUMXつの整数変数、たとえばbyte型、short型、またはint型の変数を追加すると、それらは最初にintにプロモートされ、追加が行われます。 加算の結果がaの最大値を超える場合、a + bはコンパイル時エラーになりますが、以下に示すようにa + = bは問題ありません。
バイトa = 127;
バイトb = 127;
b = a + b; //エラー:intからbyteに変換できません
b + = a; // わかった
JavaOOPSインタビューの質問
1. Java のクラスとは何ですか?
現実の世界では、同じ種類のオブジェクトがたくさんあることがよくあります。 たとえば、あなたの自転車は世界にたくさんある自転車のXNUMXつにすぎません。 オブジェクト指向の用語を使用すると、自転車オブジェクトは、自転車と呼ばれるオブジェクトのクラスのインスタンス(用語集内)であると言えます。 自転車には、いくつかの状態(現在のギア、現在のケイデンス、XNUMXつの車輪)と動作(ギアの変更、ブレーキ)が共通しています。 ただし、各自転車の状態は他の自転車とは独立しており、異なる場合があります。
自転車を製造する場合、メーカーは自転車が特性を共有しているという事実を利用して、同じ青写真から多くの自転車を製造します。 製造される個々の自転車ごとに新しい青写真を作成することは非常に非効率的です。
オブジェクト指向ソフトウェアでは、長方形、従業員の記録、ビデオクリップなど、特性を共有する同じ種類のオブジェクトを多数持つこともできます。 自転車メーカーと同様に、同じ種類のオブジェクトが類似しているという事実を利用して、それらのオブジェクトの青写真を作成できます。 オブジェクトのソフトウェア設計図は、(用語集では)クラスと呼ばれます。
2. javaのコンストラクターとは何ですか?
"A constructor in Java is a special method that is used to initialize objects. The constructor is called when an object of a class is created. It can be used to set initial values for object attributes: Example
Create a constructor: // Create a MyClass class
public class MyClass { int x; // Create a class attribute // Create a class constructor for the MyClass class public MyClass() { x = 5; // Set the initial value for the class attribute x } public static void main(String[] args) { MyClass myObj = new MyClass(); // Create an object of class MyClass (This will call the constructor) System.out.println(myObj.x); // Print the value of x }
} // Outputs 5
3. Java のオブジェクトとは何ですか?
オブジェクトは、変数と関連するメソッドのソフトウェアバンドルです。
ソフトウェアオブジェクトを使用して、実際のオブジェクトを表すことができます。 実世界の犬をアニメーションプログラムのソフトウェアオブジェクトとして表現したり、実世界の自転車を電子エアロバイク内のソフトウェアオブジェクトとして表現したりすることができます。 ただし、ソフトウェアオブジェクトを使用して抽象的な概念をモデル化することもできます。 たとえば、イベントは、ユーザーがマウスボタンまたはキーボードのキーを押すアクションを表すためにGUIウィンドウシステムで使用される一般的なオブジェクトです。
4. Javaでオブジェクトを作成するにはどうすればよいですか?
- 宣言:太字で設定されているコードはすべて、変数名をオブジェクトタイプに関連付ける変数宣言です。
- インスタンス化:新しいキーワードは、オブジェクトを作成するJava演算子です。
- 初期化:new演算子の後にコンストラクターが呼び出され、新しいオブジェクトが初期化されます。
5. Javaのオブジェクトとは何ですか?
ソフトウェアオブジェクトは、概念的には実世界のオブジェクトに似ています。それらも状態と関連する動作で構成されています。 オブジェクトは、その状態をフィールド(一部のプログラミング言語の変数)に格納し、メソッド(一部のプログラミング言語の関数)を介してその動作を公開します。 メソッドはオブジェクトの内部状態を操作し、オブジェクト間の通信の主要なメカニズムとして機能します。 内部状態を非表示にし、すべての対話をオブジェクトのメソッドを介して実行することを要求することは、データカプセル化として知られています。これは、オブジェクト指向プログラミングの基本原則です。
6. Java のおっととは何ですか?
オブジェクト指向プログラミング システム (OOP) は、データとメソッドを含む「オブジェクト」の概念に基づいたプログラミング パラダイムです。オブジェクト指向プログラミングの主な目的は、プログラムの柔軟性と保守性を高めることです。オブジェクト指向プログラミングでは、データとその動作 (メソッド) が 1 つの場所 (オブジェクト) にまとめられるため、プログラムがどのように動作するかを理解しやすくなります。 OOP の概念を理解するのが難しいことに直面しないように、OOP のすべての機能を詳しく説明します。
7. Java でバイト コードを実行するのは誰ですか?
バイトコードは、Javaプログラム用にコンパイルされた形式です。 Javaプログラムがバイトコードに変換されると、ネットワークを介して転送され、Java仮想マシン(JVM)によって実行されます。
8. なぜ Java は安全なのでしょうか?
Javaにはポインタの概念がありません。 したがって、Javaは安全です。 Javaは、実際のメモリ位置へのアクセスを提供しません。
9. Javaが多重継承をサポートしないのはなぜですか?
Javaは、インターフェースのみを介した多重継承をサポートします。 クラスは任意の数のインターフェースを実装できますが、拡張できるのはXNUMXつのクラスのみです。
致命的なダイヤモンドの問題につながるため、多重継承はサポートされていません。 ただし、解決することはできますが、システムが複雑になるため、Javaの創設者によって多重継承が削除されました。
10. Javaが多重継承をサポートしないのはなぜですか?
Javaは、インターフェースを介した多重継承のみをサポートします。 クラスは任意の数のインターフェースを実装できますが、拡張できるのはXNUMXつのクラスのみです。 致命的なダイヤモンドの問題につながるため、多重継承はサポートされていません。
11. Javaで抽象クラスのオブジェクトを作成できないのはなぜですか?
抽象クラスは不完全なクラスであるため(本体と出力のない抽象メソッドが含まれているという意味で不完全です)、インスタンスやオブジェクトを作成することはできません。 インターフェイスについて言うのと同じ方法です。
12. コンストラクターのオーバーロードとは何ですか?
クラスに、異なる関数定義または異なるパラメーターを持つ複数のコンストラクターがある場合、コンストラクターのオーバーロードと呼ばれます。
import java.io.*; import java.lang.*; public class constructor_overloading { double sum; constructor_overloading(){ sum=0; } constructor_overloading(int x,int y){ sum=x+y; } constructor_overloading(double x,double y){ sum=x+y; } void print_sum(){ System.out.println(sum); } public static void main(String args[]){ constructor_overloading c=new constructor_overloading(); c.print_sum(); constructor_overloading c1=new constructor_overloading(10,20); c1.print_sum(); constructor_overloading c2=new constructor_overloading(10.11,20.11); c2.print_sum(); } }
13. Javaでは何種類の継承が可能ですか?
Javaでは、単一、複数、マルチレベル、ハイブリッド、および階層の継承が可能です。 ハイブリッド継承と階層継承は、インターフェースを介してのみ可能です。
14. Javaは何種類のコンストラクターをサポートしていますか?
Javaは、次のタイプのコンストラクターをサポートしています。
–パラメーター化されていないコンストラクターまたはデフォルトのコンストラクター
–パラメーター化されたコンストラクター
–コピーコンストラクター
15. Javaのシングルトンクラスとは何ですか? クラスをシングルトンにすることの利点は何ですか?
シングルトンクラスは、アプリケーション内に最大でXNUMXつのインスタンスを持つことができるJavaのクラスです。 同じクラスに対して新しいインスタンスが作成される場合、それらは最初に作成されたインスタンスを指し、したがってすべての属性とプロパティに対して同じ値を持ちます。
シングルトンクラスは、オブジェクトへのグローバルアクセスポイントを作成するために作成されます。 シングルトンクラスは、すべてユニバーサルアクセスのエンティティであるキャッシング、ロギング、デバイスドライバーで主に使用されます。
16. Finalize() の役割は何ですか?
Finalize()はガベージコレクションに使用されます。 未使用のオブジェクトをクリアするために、デフォルトでJava実行環境によって呼び出されます。 これは、メモリ管理とヒープのクリアのために行われます。
17.Javaでのカプセル化について説明します。
カプセル化は、不要な詳細を隠すために、変数と関数をXNUMXつのユニットにまとめるプロセスです。 ラップされたエンティティは、Javaではクラスと呼ばれます。 カプセル化は、根底にある複雑さを隠すため、データ隠蔽とも呼ばれます。
18.Javaでの抽象化について説明します。
抽象化とは、Javaのユニット全体で重要な情報を明らかにし、些細な詳細を隠すプロセスです。 Javaには、データの抽象化を行うための抽象クラスとメソッドがあります。
19.子クラスが基本クラスを継承する場合、基本クラスのコンストラクターも子クラスに継承されますか?
コンストラクターはクラスのプロパティではありません。 したがって、それらを継承することはできません。 コンストラクターを継承できる場合は、親クラスのコンストラクターを使用して子クラスを作成できることも意味します。これにより、後で子クラスがインスタンス化されたときに参照エラーが発生する可能性があります。 したがって、このような複雑さを回避するために、コンストラクターを継承することはできません。 子クラスは、superキーワードを使用して親クラスコンストラクターを呼び出すことができます。
20.スーパーの用途は何ですか?
super()は、サブクラスコンストラクターによってスーパークラスコンストラクターを呼び出すために使用されます。 このようにして、スーパークラスとサブクラスに異なるオブジェクトを作成する必要はありません。
21. Javaでカプセル化はどのように実現されますか?
カプセル化は、データとコードをクラスと呼ばれる単純なラッパーにラップすることによって実現されます。 オブジェクトはクラスをインスタンス化して、クラスデータのコピーを取得します。
22. Javaの抽象クラスとは何ですか?
抽象クラスは、継承のみが可能なクラスであり、オブジェクトの作成には使用できません。 これは、機能が制限された制限付きクラスの一種です。
23. Java ではポリモーフィズムはどのように実現されますか?
ポリモーフィズムの例は、数値と文字列の両方を比較するために使用できる==演算子です。
24.メインメソッドをJavaでプライベートとして宣言できますか?
はい、mainメソッドはprivateとして宣言できます。
25. Javaのオブジェクトとは何ですか?
オブジェクトは、Javaのクラスのインスタンスです。 クラスのすべての属性とプロパティを共有します。
26.コンストラクターをfinalにするとどうなりますか?
コンストラクターをfinalにすると、コンストラクター内で初期化されたクラス変数が使用できなくなります。 それらの状態は変更できません。
27.コンストラクターチェーンとは何ですか?
コンストラクターチェーンは、コンストラクター内で同じクラスまたは異なるクラスのコンストラクターを呼び出すプロセスです。 このように、異なるパラメーターを持つコンストラクターを使用したコンストラクターの呼び出しには、複数のオブジェクトは必要ありません。
Javaマルチスレッドインタビューの質問
1. Javaのマルチスレッドとは何ですか?
マルチスレッドは、CPU を最大限に活用するためにプログラムの 2 つ以上の部分を同時に実行できるようにする Java 機能です。このようなプログラムの各部分はスレッドと呼ばれます。したがって、スレッドはプロセス内の軽量プロセスです。
2. Java におけるスレッドセーフとは何ですか?
Javaのスレッドセーフまたはスレッドセーフコードとは、並行またはマルチスレッド環境で安全に使用または共有できるコードを指し、期待どおりに動作します。 並行環境でのコントラクトとは異なる動作をする可能性のあるコード、クラス、またはオブジェクトは、スレッドセーフではありません。
3. Java のスレッドとは何ですか?
スレッドは、複数のプロセスを同時に実行できるようにする軽量のプログラムです。 すべてのJavaプログラムには、メインスレッドと呼ばれるスレッドが少なくともXNUMXつあり、メインスレッドはJVMによって作成されます。 ユーザーは、Threadクラスを拡張することにより(または)Runnableインターフェースを実装することにより、独自のスレッドを定義できます。 スレッドは同時に実行されます。
public static void main(String[] args){//main thread starts here }
4. Java の volatile とは何ですか?
Volatileキーワードは、さまざまなスレッドによって変数の値を変更するために使用されます。 また、クラスをスレッドセーフにするためにも使用されます。 これは、複数のスレッドが問題なくクラスのメソッドとインスタンスを同時に使用できることを意味します。
5.範囲内のJavaで乱数を生成する方法は?
import java.util.concurrent.ThreadLocalRandom; // nextInt is normally exclusive of the top value,
// so add 1 to make it inclusive
int randomNum = ThreadLocalRandom.current().nextInt(min, max + 1);
6.代入演算子を使用してオブジェクトのクローンを作成する場合、参照は異なりますか?
代入演算子を使用してオブジェクトのクローンを作成すると、両方のオブジェクトが同じ参照を共有します。 一方のオブジェクトによってデータに加えられた変更は、もう一方のオブジェクトにも反映されます。
7. Java でスレッドを XNUMX 回開始できますか?
スレッドが開始されると、それを再び開始することはできません。 これを行うと、IllegalThreadStateExceptionがスローされます
8. Java スレッドはどのように作成できますか?
実行可能なインターフェースを実装することにより、スレッドを作成できます。
スレッドは、スレッドクラスを拡張して作成することもできます。
これで、Javaインタビューの質問は終わりです。 面接に臨む準備が整ったことをうれしく思います。
Javaインタビューの質問に関するFAQ
1. Java 面接には何を準備すればよいですか?
今後のJavaインタビューの準備をするための固定された方法はありません。 ただし、Javaの基本概念を理解することは、うまくやるために重要です。 次のステップは、概念をよく理解するのに役立つJava初心者コースを受講するか、自己学習のためのトップブックを読むことです。 コース、本、ブログを通じて基本的な概念を学ぶだけでなく、実践的な経験を積むのに役立つプロジェクトに取り組むこともできます。
2. Java の基本は何ですか?
Javaは、オブジェクト指向の汎用プログラミング言語です。 構文が使いやすいため、人気のあるプログラミング言語です。 Javaの基本には、Javaとは何か、JavaとJava IDEのインストール方法、Javaの変数とデータ型、Javaの演算子、配列、関数、フロー制御ステートメント、および基本プログラムの理解が含まれます。 Javaの基本を学ぶために、Java for Beginnersコースを受講し、Javaプログラミングで成功するキャリアを構築するために必要な概念を理解することができます。
3. Javaで文字列が不変なのはなぜですか?
文字列の値が変更されないようにするために、Javaでは文字列は不変です。 Javaは文字列リテラルを使用します。XNUMXつのオブジェクトを参照する変数が複数あり、オブジェクトの値が変更されると、すべての参照変数に影響します。 したがって、Javaでは文字列は不変です。
4.Javaでポインタが使用されないのはなぜですか。
Javaはポインタの使用を許可していません。 Javaでは、より安全で堅牢であることを保証するためにポインターは使用されません。
5. Java は 100% オブジェクト指向言語ですか?
いいえ。Javaは100%オブジェクト指向言語ではありません。 オブジェクト指向言語のいくつかの原則に従いますが、すべてではありません。
6. Javaの機能は何ですか?
Javaの主な機能には、マルチスレッド、プラットフォームに依存しない、シンプル、セキュア、アーキテクチャニュートラル、ポータブル、堅牢、動的、高性能、およびインタープリターが含まれます。
7. Java を簡単に学ぶにはどうすればよいですか?
あなたとあなたの学習スタイルに合った学習方法は、学習するための最良の方法と見なされるべきです。 さまざまな人々がさまざまな方法でよく学びます。 オンラインコースを受講したり、本やブログを読んだり、YouTubeのビデオを見て自己学習したりすることを好む人もいます。 また、実践や実地体験を通じて学ぶ人もいます。 あなたに最適なものを選択してください!
8. JavaのAPIとは何ですか?
Javaでは、APIはApplication ProgrammingInterfaceの略です。 これは、XNUMXつのアプリケーションが相互に通信できるようにするソフトウェアです。 これは、JDKまたはJava Development Kitの一部であり、インターフェース、パッケージ、クラス、フィールド、メソッド、およびコンストラクターを含むクラスのリストです。
9.Javaフルフォームとは?
Javaは、SunMicrosystemsのJamesGoslingによって最初に開発されたプログラミング言語です。 開発者がコーヒーを飲み、プログラミング言語の名前をブレインストーミングしている間、1995年にJavaという名前を付けることにしました。完全な形式はありません。
Great Learning AcademyのこれらのJAVAコースに登録して、無料で証明書を取得できます。
Javaプログラミング
ヒンディー語でのJavaプログラミング
Java のデータ構造とアルゴリズム
非常に切望されている需要の高いスキルを無料でどこで学ぶことができるか疑問に思っていますか? のコースをチェックしてください グレートラーニングアカデミー。いずれかのコースに登録して、需要の高いスキルを学び、無料の証明書を取得してください。急いで!
7 出典: https://www.mygreatlearning.com/blog/java-interview-questions/
- '
- "
- &
- 100
- 11
- 2021
- 7
- 9
- 絶対の
- アクセス
- 接近性
- Action
- 利点
- アルゴリズム
- すべて
- 間で
- アニメーション
- アリ
- API
- API
- アプリ
- 申し込み
- アプリ
- 建築
- Archive
- AREA
- 引数
- 周りに
- 記事
- 賃貸条件の詳細・契約費用のお見積り等について
- 銀行
- の基礎
- BEST
- 自転車
- 10億
- ブラック
- ブログ
- BMW
- ボディ
- 本
- ボックス
- ブラウザ
- バブル
- ビルド
- ビルダー
- 建物
- 一式販売
- ビジネス
- ビジネスアプリケーション
- ケイデンス
- コール
- 容量
- キャリア
- 自動車
- レスリング
- 原因となる
- 証明書
- 証明書
- 変化する
- 点検
- 小切手
- 子
- クロム
- クライアント
- コード
- コーディング
- コーヒー
- 環境、テクノロジーを推奨
- 専門学校・大学
- コマンドと
- コミュニケーション
- 企業
- 会社
- コンポーネント
- 混乱
- 接続されたデバイス
- コンテナ
- コンテナ
- コンテンツ
- 中身
- 縮小することはできません。
- 変換
- クッキー
- 作成
- 電流プローブ
- DAO
- データ
- データアクセス
- データ処理
- データベース
- データベースを追加しました
- 設計
- 詳細
- 開発する
- Developer
- 開発者
- 開発
- Devices
- ドキュメント
- 犬
- ドライバー
- 落とした
- エンジニアリング
- エンジニア
- 英語
- Enterprise
- 環境
- 等
- イベント
- イベント
- Excel
- 特別
- 実行
- 運動
- 体験
- エクステンション
- 顔
- スピーディー
- 特徴
- 特徴
- フィールズ
- フィギュア
- 名
- FIS
- 柔軟性
- フロー
- フォード
- フォーム
- 形式でアーカイブしたプロジェクトを保存します.
- 創設者
- フレームワーク
- 無料版
- フル
- function
- 基礎
- ギア
- 性別
- グローバル
- 素晴らしい
- グリーン
- グループ
- ガイド
- ハンドリング
- ハッシュ
- ハッシュ
- こちら
- 隠す
- ハイ
- 認定条件
- How To
- HTTPS
- ハイブリッド
- アイデア
- 含めて
- 増える
- index
- インドネシア
- 産業
- 情報
- インテグラル
- 相互作用
- インターネット
- インタビュー
- 記事執筆
- 投資
- 投資銀行
- 問題
- IT
- Java
- JavaScriptを
- ジュエル
- ジョブ
- join
- キー
- キー
- キット
- 知識
- 言語
- ESL, ビジネスESL <br> 中国語/フランス語、その他
- 大
- 主要な
- LEARN
- 学習
- レベル
- 図書館
- 限定的
- LINE
- LINK
- リスト
- リスト
- 負荷
- 場所
- 長い
- 主要な
- 作成
- 管理
- 製造された
- 地図
- マーク
- math
- だけど
- メンバー
- モバイル
- モバイルアプリ
- 一番人気
- MS
- すなわち
- 名
- net
- ネットワーク
- 番号
- オーク
- オファー
- オンライン
- 開いた
- 業務執行統括
- オプション
- オプション
- オラクル
- 注文
- その他
- パラダイム
- パターン
- のワークプ
- パフォーマンス
- 枢軸
- プラットフォーム
- プール
- 人気
- 現在
- プライベート
- 対応プロファイル
- 演奏曲目
- プログラミング
- プログラミング言語
- プログラム
- プロジェクト
- プロジェクト管理
- プロジェクト(実績作品)
- 公共
- Python
- 品質
- 範囲
- リーダー
- リーディング
- への
- 記録
- 要件
- リソースを追加する。
- REST
- 収益
- 逆
- リスク
- rt
- ラン
- ランニング
- スキャン
- 学校
- 画面
- を検索
- セキュリティ
- 見て
- センス
- サービス
- セッションに
- シェアする
- shared
- 株式
- ショート
- 簡単な拡張で
- サイズ
- スキル
- 小さい
- So
- ソフトウェア
- ソフトウェア開発
- 解決する
- スペース
- split
- スプレッドシート
- 春
- SQL
- 広場
- ステージ
- start
- 開始
- スタートアップ
- 都道府県
- 米国
- ストレージ利用料
- 店舗
- 店舗
- 戦略
- 学生
- 成功した
- 補給
- サポート
- サポート
- サポート
- スイッチ
- システム
- 会話
- テクノロジー
- テクノロジー
- test
- 基礎
- ソース
- 時間
- top
- 運ばれた
- チュートリアル
- ユニバーサル
- 大学
- 大学
- アップデイト
- us
- users
- ユーティリティ
- 値
- ビデオ
- 動画
- バーチャル
- バーチャルマシン
- ボルボ
- ウェブ
- Webアプリケーション
- ウェブサイト
- 何ですか
- 誰
- ウィンドウズ
- 以内
- 言葉
- 仕事
- 作品
- 世界
- X
- XML
- ユーチューブ