100 Soalan dan Jawapan Wawancara Java Teratas (Muat turun PDF)

Isi kandungan:

Anonim

Muat turun PDF

Kami telah mengumpulkan Soalan dan Jawapan Wawancara Java yang paling sering ditanyakan yang akan membantu anda mempersiapkan soalan wawancara Java Asas yang mungkin ditanyakan oleh pewawancara semasa wawancara anda. Dalam senarai soalan wawancara Java Asas ini, kami telah membahas semua soalan wawancara Core Java asas dan lanjutan yang sering diajukan dengan jawapan terperinci untuk membantu anda membersihkan wawancara kerja.

Senarai berikut mengandungi 100 soalan wawancara Core Java penting untuk penyegar baru serta soalan dan jawapan wawancara Java untuk pengaturcara berpengalaman untuk membantu mereka mempersiapkan diri untuk wawancara. Panduan terperinci soalan wawancara untuk Pengaturcaraan Java ini akan membantu anda menyelesaikan temuduga Pekerjaan anda dengan mudah.

Soalan dan Jawapan Temuduga Teras Java untuk Penyegar dan Berpengalaman

S1. Apakah perbezaan antara Kelas Dalam dan Sub-Kelas?

Jawapan: Kelas dalaman adalah kelas yang bersarang dalam kelas lain. Kelas dalaman mempunyai hak akses untuk kelas yang bersarang dan dapat mengakses semua pemboleh ubah dan kaedah yang ditentukan dalam kelas luar.

Sub-kelas adalah kelas yang mewarisi dari kelas lain yang disebut kelas super. Sub-kelas dapat mengakses semua kaedah dan bidang awam dan dilindungi kelas supernya.

S2. Apakah pelbagai spesifikasi akses untuk kelas Java?

Jawapan: Di Java, penentu akses adalah kata kunci yang digunakan sebelum nama kelas yang menentukan skop akses. Jenis penentu akses untuk kelas adalah:

1. Awam: Kelas, Kaedah, Medan boleh diakses dari mana sahaja.

2. Dilindungi: Kaedah, Medan dapat diakses dari kelas yang sama di mana mereka berada atau dari sub-kelas, dan dari kelas paket yang sama, tetapi tidak dari luar.

3. Default: Kaedah, Medan, kelas hanya dapat diakses dari pakej yang sama dan bukan dari luar pakej asli.

4. Peribadi: Kaedah, Medan dapat diakses dari kelas yang sama tempat mereka berada.

S3. Apakah tujuan kaedah Statik dan pemboleh ubah statik?

Jawapan: Apabila ada syarat untuk berkongsi kaedah atau pemboleh ubah antara beberapa objek kelas dan bukannya membuat salinan terpisah untuk setiap objek, kami menggunakan kata kunci statik untuk membuat kaedah atau pemboleh ubah yang dibagi untuk semua objek.

S4. Apa itu enkapsulasi data dan apa kepentingannya?

Jawapan: Encapsulation adalah konsep dalam Pengaturcaraan Berorientasikan Objek untuk menggabungkan sifat dan kaedah dalam satu unit.

Encapsulation membantu pengaturcara untuk mengikuti pendekatan modular untuk pengembangan perisian kerana setiap objek mempunyai set kaedah dan pemboleh ubah tersendiri dan melayani fungsinya bebas dari objek lain. Encapsulation juga berfungsi untuk tujuan penyembunyian data.

S5. Apa itu kelas singleton? Berikan contoh praktikal penggunaannya.

Satu kelas tunggal di java hanya boleh mempunyai satu contoh dan oleh itu semua kaedah dan pemboleh ubahnya hanya dimiliki satu contoh. Konsep kelas Singleton berguna untuk situasi apabila terdapat keperluan untuk menghadkan bilangan objek untuk kelas.

Contoh terbaik senario penggunaan singleton adalah apabila terdapat had hanya mempunyai satu sambungan ke pangkalan data kerana beberapa batasan pemandu atau kerana adanya masalah pelesenan.

S6. Apa itu Gelung di Java? Apakah tiga jenis gelung?

Jawapan: Looping digunakan dalam pengaturcaraan untuk melaksanakan pernyataan atau sekatan pernyataan berulang kali. Terdapat tiga jenis gelung di Jawa:

1) Untuk Gelung

Untuk gelung digunakan dalam java untuk melaksanakan penyataan berulang kali untuk sebilangan kali. Untuk gelung digunakan apabila sebilangan kali untuk melaksanakan penyataan diketahui oleh pengaturcara.

2) Semasa Gelung

Sementara gelung digunakan apabila pernyataan tertentu perlu dilaksanakan berulang kali sehingga suatu syarat terpenuhi. Semasa gelung, keadaan diperiksa terlebih dahulu sebelum pelaksanaan penyataan.

3) Lakukan Semasa Gelung

Do While Loop adalah sama dengan While loop dengan perbezaan hanya keadaan yang diperiksa setelah pelaksanaan blok penyataan. Oleh itu sekiranya berlaku loop sementara, pernyataan dilaksanakan sekurang-kurangnya sekali.

S7: Apakah gelung tanpa batas itu? Bagaimana gelung tak terhingga dinyatakan?

Jawapan: Gelung tanpa batas berjalan tanpa syarat dan berjalan tanpa had. Gelung tak terhingga dapat dipecahkan dengan menentukan logik putus dalam badan blok penyataan.

Gelung tak terhingga dinyatakan sebagai berikut:

for (;;){// Statements to execute// Add any loop breaking logic}

S8. Apakah perbezaan antara pernyataan terus dan putus?

Jawapan: rehat dan teruskan adalah dua kata kunci penting yang digunakan dalam Gelung. Apabila kata kunci putus digunakan dalam gelung, gelung diputus seketika sementara kata kunci lanjutan digunakan, lelaran semasa rosak dan gelung diteruskan dengan lelaran seterusnya.

Dalam contoh di bawah, Loop rosak apabila kaunter mencapai 4.

for (counter = 0; counter & lt; 10; counter++)system.out.println(counter);if (counter == 4) {break;}}

Dalam contoh di bawah ini apabila penghitung mencapai 4, gelung melompat ke lelaran seterusnya dan sebarang pernyataan setelah kata kunci lanjutan dilangkau untuk lelaran semasa.

for (counter = 0; counter < 10; counter++)system.out.println(counter);if (counter == 4) {continue;}system.out.println("This will not get printed when counter is 4");}

S9. Apakah perbezaan antara pemboleh ubah double dan float di Java?

Jawapan: Dalam java, float mengambil 4 bait dalam memori sementara Double mengambil 8 bait dalam memori. Float adalah nombor perpuluhan titik terapung berketepatan tunggal manakala nombor perpuluhan berkembar berkembar.

S10. Apakah Kata Kunci Akhir di Java? Beri contoh.

Jawapan: Dalam java, pemalar dinyatakan menggunakan kata kunci Akhir. Nilai boleh diberikan hanya sekali dan selepas penugasan, nilai pemalar tidak dapat diubah.

Dalam contoh di bawah, pemalar dengan nama const_val dinyatakan dan diberi nilai:

Final Persendirian int const_val = 100

Apabila kaedah dinyatakan sebagai muktamad, TIDAK dapat diganti oleh subkelas. Kaedah ini lebih cepat daripada kaedah lain, kerana kaedah tersebut diselesaikan pada waktu yang dipatuhi

Apabila kelas diisytiharkan sebagai muktamad, kelas tidak boleh dikelaskan dalam kelas. Contoh kelas String, Integer dan pembungkus lain.

S11. Apakah pengendali ternary? Beri contoh.

Jawapan: Operator Ternary, juga disebut operator bersyarat digunakan untuk menentukan nilai mana yang akan diberikan kepada pemboleh ubah berdasarkan penilaian nilai Boolean. Ia dilambangkan sebagai?

Dalam contoh di bawah, jika pangkat adalah 1, status diberikan nilai "Selesai" yang lain "Tertunda".

public class conditionTest {public static void main(String args[]) {String status;int rank = 3;status = (rank == 1) ? "Done" : "Pending";System.out.println(status);}}

S12: Bagaimana anda boleh menghasilkan nombor rawak di Java?

Jawapan:

  • Dengan menggunakan Math.random () anda boleh menghasilkan nombor rawak dalam julat lebih besar daripada atau sama dengan 0.1 dan kurang daripada 1.0
  • Menggunakan kelas Rawak dalam pakej java.util

S13. Apakah kes suis lalai? Beri contoh.

Jawapan: Dalam pernyataan suis, kes lalai dilaksanakan apabila tidak ada keadaan suis lain yang sesuai. Kes lalai adalah kes pilihan. Ia boleh dinyatakan hanya setelah semua kes suis lain dikodkan.

Dalam contoh di bawah, apabila skor tidak 1 atau 2, kes lalai digunakan.

public class switchExample {int score = 4;public static void main(String args[]) {switch (score) {case 1:system.out.println("Score is 1");break;case 2:system.out.println("Score is 2");break;default:system.out.println("Default Case");}}}

S14. Apakah kelas asas di Java dari mana semua kelas berasal?

Jawapan: java.lang.object

S15. Adakah kaedah utama () di Java dapat mengembalikan data?

Jawapan: Dalam java, kaedah utama () tidak dapat mengembalikan data dan oleh itu, ia selalu dinyatakan dengan jenis pengembalian yang tidak sah.

S16. Apa itu Pakej Java? Apa kepentingan pakej?

Jawapan: Di Java, paket adalah kumpulan kelas dan antara muka yang digabungkan bersama-sama kerana saling berkaitan. Penggunaan pakej membantu pembangun memodulasi kod dan mengelompokkan kod tersebut untuk digunakan semula dengan betul. Setelah kod dibungkus dalam Pakej, ia dapat diimport di kelas lain dan digunakan.

S17. Bolehkah kita menyatakan kelas sebagai Abstrak tanpa kaedah abstrak?

Jawapan: Ya, kita boleh membuat kelas abstrak dengan menggunakan kata kunci abstrak sebelum nama kelas walaupun tidak mempunyai kaedah abstrak. Walau bagaimanapun, jika kelas mempunyai satu kaedah abstrak, ia mesti dinyatakan sebagai abstrak jika tidak, ia akan memberikan kesalahan.

S18. Apakah perbezaan antara Kelas Abstrak dan Antaramuka di Java?

Jawapan: Perbezaan utama antara kelas abstrak dan antara muka adalah bahawa antara muka hanya boleh mempunyai pengisytiharan kaedah statik awam tanpa pelaksanaan konkrit sementara kelas abstrak dapat memiliki anggota dengan penentu akses (awam, swasta dll) dengan atau tanpa pelaksanaan konkrit.

Perbezaan utama lain dalam penggunaan kelas abstrak dan antaramuka ialah kelas yang mengimplementasikan antara muka mesti melaksanakan semua kaedah antara muka sementara kelas yang mewarisi dari kelas abstrak tidak memerlukan pelaksanaan semua kaedah kelas supernya.

Kelas boleh melaksanakan pelbagai antara muka tetapi hanya dapat meluaskan satu kelas abstrak.

S19. Apakah implikasi prestasi antara muka berbanding kelas abstrak?

Jawapan: Antaramuka prestasi lebih perlahan berbanding kelas abstrak kerana arahan tambahan diperlukan untuk antara muka. Faktor utama lain yang perlu dipertimbangkan oleh pembangun adalah bahawa kelas mana pun dapat memperluas hanya satu kelas abstrak sementara kelas dapat melaksanakan banyak antara muka.

Penggunaan antara muka juga memberi beban tambahan kepada pembangun kerana setiap kali antara muka dilaksanakan di dalam kelas; pemaju terpaksa melaksanakan setiap kaedah antara muka.

S20. Adakah Mengimport pakej mengimport sub-pakejnya juga di Java?

Jawapan: Di java, apabila pakej diimport, sub-pakejnya tidak diimport dan pembangun perlu mengimportnya secara berasingan jika diperlukan.

Contohnya, jika pembangun mengimport universiti pakej. *, Semua kelas dalam pakej bernama universiti dimuat tetapi tidak ada kelas dari sub-paket yang dimuatkan. Untuk memuat kelas dari sub-pakejnya (katakanlah bahagian), pemaju harus mengimportnya secara eksplisit seperti berikut:

Import universiti. Jabatan. *

S21. Bolehkah kita menyatakan kaedah utama kelas kita sebagai peribadi?

Jawapan: Dalam java, kaedah utama mestilah bersifat statik untuk menjalankan sebarang aplikasi dengan betul. Sekiranya kaedah utama dinyatakan sebagai peribadi, pembangun tidak akan mendapat sebarang kesalahan kompilasi, namun ia tidak akan dilaksanakan dan akan memberikan ralat runtime.

S22. Bagaimanakah kita dapat menyampaikan argumen ke fungsi dengan merujuk dan bukannya lulus dengan nilai?

Jawapan: Dalam java, kita dapat menyampaikan argumen ke fungsi hanya dengan nilai dan bukan dengan rujukan.

S23. Bagaimana objek bersiri dalam java?

Jawapan: Dalam java, untuk menukar objek menjadi aliran bait dengan bersiri, antara muka dengan nama Serializable dilaksanakan oleh kelas. Semua objek kelas yang melaksanakan antara muka bersiri dapat diselaraskan dan keadaannya disimpan dalam aliran bait.

S24. Bilakah kita harus menggunakan serialisasi?

Jawapan: Serialisasi digunakan apabila data perlu dihantar melalui rangkaian. Dengan menggunakan siri, keadaan objek disimpan dan diubah menjadi aliran bait. Aliran bait dipindahkan melalui rangkaian dan objek dibuat semula di tempat tujuan.

Q25. Adakah wajib untuk Mencuba Blok diikuti oleh Catch Block di Java untuk pengendalian Pengecualian?

Jawapan: Cuba blok perlu diikuti sama ada Catch block atau Akhirnya block atau kedua-duanya. Apa-apa pengecualian yang dilemparkan dari blok cubaan perlu dimasukkan ke dalam blok tangkapan atau tugas-tugas khusus yang harus dilakukan sebelum pengguguran kod dimasukkan ke dalam blok Akhirnya.

Q26. Adakah cara untuk melangkau blok pengecualian Akhirnya walaupun terdapat beberapa pengecualian di blok pengecualian?

Jawapan: Sekiranya terdapat pengecualian di blok Cuba, kawalan lulus untuk menangkap blok jika ada sebaliknya untuk akhirnya menyekat. Akhirnya blok selalu dilaksanakan apabila pengecualian berlaku dan satu-satunya cara untuk mengelakkan pelaksanaan penyataan dalam Akhirnya blok adalah dengan membatalkan kod secara paksa dengan menulis baris kod berikut di akhir blok cubaan:

System.exit(0);

S27. Apabila pembina kelas dipanggil?

Jawapan: Pembina kelas dipanggil setiap kali objek dibuat dengan kata kunci baru.

Sebagai contoh, dalam kelas berikut dua objek dibuat menggunakan kata kunci baru dan oleh itu, konstruktor dipanggil dua kali.

public class const_example {const_example() {system.out.println("Inside constructor");}public static void main(String args[]) {const_example c1 = new const_example();const_example c2 = new const_example();}}

S28. Bolehkah kelas mempunyai pelbagai pembina?

Jawapan: Ya, kelas boleh mempunyai pelbagai pembina dengan parameter yang berbeza. Pembina mana yang digunakan untuk pembuatan objek bergantung pada argumen yang dilalui semasa membuat objek.

S29. Bolehkah kita mengatasi kaedah statik kelas?

Jawapan: Kami tidak boleh mengatasi kaedah statik. Kaedah statik tergolong dalam kelas dan bukan untuk objek individu dan diselesaikan pada saat penyusunan (bukan pada waktu runtime). Walaupun kita cuba mengatasi kaedah statik, kita tidak akan mendapat ralat pelanggaran, atau kesan menimpa ketika menjalankan kod.

Q30. Dalam contoh di bawah, apakah hasilnya?

public class superclass {public void displayResult() {system.out.println("Printing from superclass");}}public class subclass extends superclass {public void displayResult() {system.out.println("Displaying from subClass");super.displayResult();}public static void main(String args[]) {subclass obj = new subclass();obj.displayResult();}}

Jawapan : Hasilnya adalah:

Memaparkan dari subkelas

Dipaparkan dari superclass

S31. Adakah String adalah jenis data dalam java?

Jawapan: String bukan jenis data primitif di java. Apabila tali dibuat dalam java, sebenarnya objek kelas Java.Lang.String yang dibuat. Setelah membuat objek rentetan ini, semua kaedah kelas String terbina dalam dapat digunakan pada objek tali.

S32. Dalam contoh di bawah, berapa banyak Objek String yang dibuat?

String s1="I am Java Expert";String s2="I am C Expert";String s3="I am Java Expert";

Jawapan: Dalam contoh di atas, dua objek kelas Java.Lang.String dibuat. s1 dan s3 adalah rujukan ke objek yang sama.

S33. Mengapa Rentetan di Jawa disebut sebagai Tidak Berubah?

Jawapan: Dalam java, objek rentetan disebut tidak berubah kerana setelah nilai diberikan ke tali, ia tidak dapat diubah dan jika diubah, objek baru akan dibuat.

Dalam contoh di bawah, str referensi merujuk pada objek string yang mempunyai nilai "Value one".

String str="Value One";

Apabila nilai baru diberikan kepadanya, objek String baru akan dibuat dan rujukan dipindahkan ke objek baru.

str="New Value";

S34. Apakah perbezaan antara array dan Vektor?

Jawapan: Array mengumpulkan data dari jenis primitif yang sama dan bersifat statik sementara vektor bersifat dinamik dan dapat menyimpan data dari pelbagai jenis data.

S35. Apa itu multi-threading?

Jawapan: Multi threading adalah konsep pengaturcaraan untuk menjalankan pelbagai tugas secara serentak dalam satu program. Thread berkongsi proses yang sama dan berjalan selari. Ini membantu dalam peningkatan prestasi mana-mana program.

S36. Mengapa Interface Runnable digunakan di Java?

Jawapan: Antaramuka runnable digunakan dalam java untuk melaksanakan aplikasi multi-threaded. Java.Lang.Runnable interface dilaksanakan oleh kelas untuk menyokong multi threading.

S37. Apakah dua cara pelaksanaan multi-threading di Java?

Jawapan: Aplikasi multi-threaded dapat dikembangkan di Java dengan menggunakan salah satu dari dua metodologi berikut:

1. Dengan menggunakan Antaramuka Java.Lang.Runnable. Kelas melaksanakan antara muka ini untuk membolehkan multi threading. Terdapat kaedah Run () di antara muka ini yang dilaksanakan.

2. Dengan menulis kelas yang meluaskan kelas Java.Lang.Thread.

S38. Apabila banyak perubahan diperlukan dalam data, mana yang harus menjadi pilihan untuk digunakan? String atau StringBuffer?

Jawapan: Oleh kerana StringBuffers bersifat dinamik dan kita dapat mengubah nilai objek StringBuffer tidak seperti String yang tidak berubah, selalu menjadi pilihan yang baik untuk menggunakan StringBuffer ketika data terlalu banyak berubah. Sekiranya kita menggunakan String dalam kasus seperti itu, untuk setiap perubahan data, objek String baru akan dibuat yang akan menjadi overhead tambahan.

S39. Apa tujuan menggunakan Break dalam setiap kes Switch Statement?

Jawapan: Break digunakan selepas setiap kes (kecuali yang terakhir) dalam suis sehingga kod pecah setelah kes yang sah dan tidak mengalir dalam kes yang seterusnya.

Sekiranya rehat tidak digunakan setelah setiap kes, semua kes setelah kes yang sah juga dapat dilaksanakan sehingga menghasilkan hasil yang salah.

S40. Bagaimana pengumpulan sampah dilakukan di Jawa?

Jawapan: Di java, apabila objek tidak dirujuk lagi, pengumpulan sampah dilakukan dan objek itu musnah secara automatik. Untuk pengumpulan sampah automatik, panggilan java sama ada kaedah System.gc () atau kaedah Runtime.gc ().

S41. Bagaimana kita dapat melaksanakan kod apa pun sebelum kaedah utama?

Jawapan: Sekiranya kita ingin melaksanakan pernyataan sebelum membuat objek pada waktu muat kelas, kita boleh menggunakan blok kod statik di kelas. Sebarang pernyataan di dalam blok kod statik ini akan dilaksanakan sekali semasa memuat kelas sebelum membuat objek dalam kaedah utama.

S42. Bolehkah kelas menjadi kelas super dan kelas bawah pada masa yang sama? Beri contoh.

Jawapan: Sekiranya terdapat hierarki warisan yang digunakan, kelas boleh menjadi kelas super untuk kelas lain dan kelas bawah untuk kelas lain pada masa yang sama.

Dalam contoh di bawah, kelas benua adalah kelas bawah kelas dunia dan kelas kelas negara super.

public class world {… .}public class continenet extends world {… }public class country extends continent {… .}

S43. Bagaimana objek kelas dibuat jika tidak ada konstruktor yang ditentukan dalam kelas?

Jawapan: Walaupun tidak ada konstruktor eksplisit yang ditentukan dalam kelas java, objek berjaya dibuat sebagai konstruktor lalai digunakan secara implisit untuk pembuatan objek. Pembina ini tidak mempunyai parameter.

S44. Dalam multi-threading bagaimana kita dapat memastikan bahawa sumber tidak digunakan oleh banyak utas secara serentak?

Jawapan: Dalam multi-threading, akses ke sumber yang dikongsi di antara banyak utas dapat dikendalikan dengan menggunakan konsep penyegerakan. Dengan menggunakan kata kunci yang disegerakkan, kami dapat memastikan bahawa hanya satu utas yang dapat menggunakan sumber yang dikongsi pada satu masa dan yang lain dapat menguasai sumber tersebut hanya setelah ia bebas dari yang lain yang menggunakannya.

S45. Bolehkah kita memanggil pembina kelas lebih dari sekali untuk objek?

Jawapan: Pembina dipanggil secara automatik apabila kita membuat objek menggunakan kata kunci baru. Ia dipanggil hanya sekali untuk objek pada saat penciptaan objek dan oleh itu, kita tidak dapat meminta konstruktor lagi untuk objek setelah penciptaannya.

S46. Terdapat dua kelas bernama classA dan classB. Kedua-dua kelas dalam pakej yang sama. Bolehkah ahli peribadi kelasA dapat diakses oleh objek kelasB?

Jawapan: Anggota kelas peribadi tidak dapat diakses di luar ruang lingkup kelas itu dan kelas lain walaupun dalam pakej yang sama tidak dapat mengaksesnya.

S47. Bolehkah kita mempunyai dua kaedah dalam kelas dengan nama yang sama?

Jawapan: Kami dapat menentukan dua kaedah dalam kelas dengan nama yang sama tetapi dengan bilangan / jenis parameter yang berbeza. Kaedah mana yang akan digunakan bergantung pada parameter yang dilalui.

Contohnya di kelas di bawah ini kita mempunyai dua kaedah mencetak dengan nama yang sama tetapi berbeza parameternya. Bergantung pada parameter, yang sesuai akan dipanggil:

public class methodExample {public void print() {system.out.println("Print method without parameters.");}public void print(String name) {system.out.println("Print method with parameter");}public static void main(String args[]) {methodExample obj1 = new methodExample();obj1.print();obj1.print("xx");}}

S48. Bagaimana kita dapat membuat salinan objek java?

Jawapan: Kita boleh menggunakan konsep pengklonan untuk membuat salinan objek. Dengan menggunakan klon, kami membuat salinan dengan keadaan sebenar objek.

Clone () adalah kaedah antara muka Cloneable dan oleh itu, antara muka Cloneable perlu dilaksanakan untuk membuat salinan objek.

Q49. Apa faedah menggunakan warisan?

Jawapan: Manfaat utama menggunakan warisan adalah penggunaan semula kod kerana pewarisan membolehkan sub-kelas menggunakan semula kod kelas supernya. Polimorfisme (Extensibility) adalah satu lagi faedah besar yang membolehkan fungsi baru diperkenalkan tanpa mempengaruhi kelas turunan yang ada.

Q50. Apakah penentu akses lalai untuk pemboleh ubah dan kaedah kelas?

Jawapan: Penentu akses lalai untuk pemboleh ubah dan kaedah dilindungi pakej iaitu pemboleh ubah dan kelas tersedia untuk kelas lain tetapi dalam paket yang sama, tidak di luar pakej.

S51. Berikan contoh penggunaan Pointers di kelas Java.

Jawapan: Tidak ada petunjuk di Jawa. Oleh itu, kita tidak dapat menggunakan konsep pointer di Java.

S52. Bagaimana kita boleh mengehadkan warisan untuk kelas sehingga tidak ada kelas yang boleh diwarisi darinya?

Jawapan: Sekiranya kita mahu kelas tidak diperluaskan lagi oleh kelas mana pun, kita boleh menggunakan kata kunci Akhir dengan nama kelas.

Dalam contoh berikut, kelas Batu adalah Akhir dan tidak dapat dilanjutkan

public Final Class Stone {// Class methods and Variables}

Q53. Apakah ruang lingkup akses penentu Akses Terlindung?

Jawapan: Apabila kaedah atau pemboleh ubah dinyatakan dengan Penentu akses dilindungi, kaedah tersebut dapat diakses di kelas yang sama, kelas lain dari paket yang sama dan juga sub-kelas.

Pengubah

Kelas

Pakej

Subkelas

Dunia

awam

Y

Y

Y

Y

dilindungi

Y

Y

Y

N

tiada pengubah

Y

Y

N

N

peribadi

Y

N

N

N

S54. Apa perbezaan antara Stack dan Queue?

Jawapan: Stack dan Queue kedua-duanya digunakan sebagai placeholder untuk pengumpulan data. Perbezaan utama antara timbunan dan barisan adalah bahawa timbunan berdasarkan prinsip Last in First out (LIFO) sementara antrian berdasarkan prinsip FIFO (First In First Out).

Q55. Di java, bagaimana kita tidak boleh membenarkan pemboleh ubah bersiri?

Jawapan: Sekiranya kita mahu pemboleh ubah tertentu kelas tidak bersiri, kita boleh menggunakan kata kunci sementara sementara menyatakannya. Contohnya, pemboleh ubah trans_var di bawah adalah pemboleh ubah sementara dan tidak boleh bersiri:

public class transientExample {private transient trans_var;// rest of the code}

Q56. Bagaimana kita dapat menggunakan jenis data primitif sebagai objek?

Jawapan: Jenis data primitif seperti int dapat dikendalikan sebagai objek dengan menggunakan kelas pembungkus masing-masing. Contohnya, Integer adalah kelas pembungkus untuk int data jenis primitif. Kita boleh menggunakan kaedah yang berbeza untuk kelas pembungkus, seperti objek lain.

Q57. Jenis pengecualian manakah yang terdapat pada waktu penyusunan?

Jawapan: Pengecualian yang diperiksa dapat dilihat semasa penyusunan program. Pengecualian yang diperiksa mesti ditangani dengan menggunakan blok catch catch dalam kod agar berjaya menyusun kod tersebut.

S58. Terangkan keadaan utas yang berbeza.

Jawapan: Benang di Java boleh berada di salah satu keadaan berikut:

  • Sedia: Apabila utas dibuat, ia dalam keadaan Sedia.
  • Berjalan: Benang yang sedang dijalankan sedang dalam keadaan berjalan.
  • Menunggu: Benang menunggu benang lain untuk membebaskan sumber tertentu dalam keadaan menunggu.
  • Mati: Benang yang telah mati setelah dilaksanakan dalam keadaan mati.

Q59. Bolehkah kita menggunakan konstruktor lalai kelas walaupun konstruktor eksplisit ditentukan?

Jawapan: Java menyediakan konstruktor tanpa argumen lalai jika tidak ada konstruktor eksplisit yang ditentukan dalam kelas Java. Tetapi jika konstruktor eksplisit telah ditentukan, konstruktor lalai tidak boleh dipanggil dan pembangun hanya boleh menggunakan pembina yang ditentukan dalam kelas.

Q60. Bolehkah kita mengatasi kaedah dengan menggunakan nama kaedah dan argumen yang sama tetapi jenis pengembalian yang berbeza?

Jawapan: Keadaan asas kaedah penggantian adalah nama kaedah, argumen dan jenis pengembalian mestilah sama persis dengan kaedah yang diganti. Oleh itu menggunakan jenis pengembalian yang berbeza tidak akan mengatasi kaedah.

Q61. Apakah hasil kod berikut?

public class operatorExample {public static void main(String args[]) {int x = 4;system.out.println(x++);}}

Jawapan: Dalam kes ini, pengendali postfix ++ digunakan yang pertama mengembalikan nilai dan kemudian bertambah. Oleh itu outputnya akan menjadi 4.

S61. Seseorang mengatakan bahawa dia berjaya menyusun kelas java tanpa mempunyai kaedah utama di dalamnya? Adakah mungkin?

Jawapan: kaedah utama adalah titik masuk kelas Java dan diperlukan untuk pelaksanaan program namun; kelas berjaya disusun walaupun tidak mempunyai kaedah utama. Ia tidak dapat dijalankan.

S62. Bolehkah kita memanggil kaedah bukan statik dari dalam kaedah statik?

Jawapan: Kaedah bukan Statik dimiliki oleh objek kelas dan mempunyai skop tahap objek dan untuk memanggil kaedah bukan Statik dari blok statik (seperti dari kaedah utama statik), objek kelas perlu dibuat pertama. Kemudian menggunakan rujukan objek, kaedah ini dapat digunakan.

S63. Apakah dua pemboleh ubah persekitaran yang mesti ditetapkan untuk menjalankan program Java?

Jawapan: Program Java dapat dijalankan dalam mesin hanya setelah dua pemboleh ubah persekitaran telah ditetapkan dengan tepat:

  1. Pemboleh ubah PATH
  2. Pemboleh ubah CLASSPATH

S64. Bolehkah pemboleh ubah digunakan di Java tanpa inisialisasi?

Jawapan: Di Jawa, jika pemboleh ubah digunakan dalam kode tanpa inisialisasi sebelumnya dengan nilai yang valid, program tidak menyusun dan memberikan kesalahan kerana tidak ada nilai lalai yang ditetapkan untuk pemboleh ubah di Java.

Q65. Bolehkah kelas di Jawa diwarisi dari lebih dari satu kelas?

Jawapan: Di Jawa, kelas boleh berasal dari satu kelas dan bukan dari beberapa kelas. Pelbagai warisan tidak disokong oleh Java.

S66. Bolehkah konstruktor mempunyai nama yang berbeza daripada nama Kelas di Java?

Jawapan: Konstruktor di Java mesti mempunyai nama yang sama dengan nama kelas dan jika namanya berbeza, ia tidak bertindak sebagai pembina dan penyusun menganggapnya sebagai kaedah biasa.

S67. Apakah output Pusingan (3.7) dan Ceil (3.7)?

Jawapan: Pusingan (3.7) mengembalikan 4 dan Ceil (3.7) mengembalikan 4.

Q68: Bisakah kita menggunakan goto di Java untuk menuju ke garis tertentu?

Jawapan: Di Jawa, tidak ada kata kunci goto dan java tidak menyokong ciri ini untuk pergi ke garis berlabel tertentu.

S69. Bolehkah benang mati dimulakan lagi?

Jawapan: Di java, benang yang dalam keadaan mati tidak dapat dimulakan lagi. Tidak ada cara untuk memulakan semula rentetan mati.

Q70. Adakah pernyataan kelas berikut betul?

Jawapan:

public abstract final class testClass {// Class methods and variables}

Jawapan: Pengisytiharan kelas di atas tidak betul kerana kelas abstrak tidak boleh dinyatakan sebagai Akhir.

S71. Adakah JDK diperlukan pada setiap mesin untuk menjalankan program Java?

Jawapan: JDK adalah Kit pengembangan Java dan hanya diperlukan untuk pengembangan dan untuk menjalankan program Java pada mesin, JDK tidak diperlukan. Hanya diperlukan JRE.

S72. Apakah perbezaan antara perbandingan yang dilakukan dengan kaedah sama dengan == pengendali?

Jawapan: Di Jawa, kaedah sama () digunakan untuk membandingkan isi dua objek rentetan dan mengembalikan nilai benar jika keduanya mempunyai nilai yang sama sementara operator == membandingkan rujukan dua objek rentetan.

Dalam contoh berikut, sama () mengembalikan benar kerana dua objek rentetan mempunyai nilai yang sama. Namun == operator mengembalikan palsu kerana kedua-dua objek rentetan merujuk kepada objek yang berbeza:

public class equalsTest {public static void main(String args[]) {String str1 = new String("Hello World");String str2 = new String("Hello World");if (str1.equals(str2)){ // this condition is trueSystem.out.println("str1 and str2 are equal in terms of values");}if (str1 == str2) {//This condition is trueSystem.out.println("Both strings are referencing same object");} else{// This condition is NOT trueSystem.out.println("Both strings are referencing different objects");}}}

Q73. Adakah mungkin untuk menentukan kaedah dalam kelas Java tetapi menyediakan pelaksanaannya dalam kod bahasa lain seperti C?

Jawapan: Ya, kita boleh melakukan ini dengan menggunakan kaedah asli. Sekiranya pengembangan berasaskan kaedah asli, kami menentukan kaedah statik umum di kelas Java kami tanpa pelaksanaannya dan kemudian pelaksanaannya dilakukan dalam bahasa lain seperti C secara terpisah.

S74. Bagaimana pemusnah didefinisikan di Jawa?

Jawapan: Di Jawa, tidak ada pemusnah yang ditentukan dalam kelas kerana tidak perlu melakukannya. Java mempunyai mekanisme pengumpulan sampah sendiri yang melakukan kerja secara automatik dengan memusnahkan objek ketika tidak lagi dirujuk.

Q75. Bolehkah pemboleh ubah menjadi tempatan dan statik pada masa yang sama?

Jawapan: Tidak ada pemboleh ubah yang tidak statik dan tempatan pada masa yang sama. Mendefinisikan pemboleh ubah tempatan sebagai statik memberikan kesalahan penyusunan.

Q76. Bolehkah kita mempunyai kaedah statik dalam Antaramuka?

Jawapan: Kaedah statik tidak boleh diganti dalam kelas mana pun sementara kaedah dalam antara muka secara lalai abstrak dan seharusnya dilaksanakan di kelas yang sedang melaksanakan antara muka. Oleh itu, tidak masuk akal untuk menggunakan kaedah statik di antara muka di Java.

S77. Dalam kelas yang melaksanakan antara muka, bolehkah kita mengubah nilai pemboleh ubah yang ditentukan dalam antara muka?

Jawapan: Tidak, kita tidak dapat mengubah nilai pemboleh ubah antara muka dalam kelas pelaksana kerana semua pemboleh ubah yang ditentukan dalam antara muka secara umum, pemboleh ubah statik dan Akhir dan akhir adalah seperti pemalar yang tidak dapat diubah kemudian.

Q78. Adakah benar untuk mengatakan bahawa kerana ciri pengumpulan sampah di Java, program java tidak pernah habis?

Jawapan: Walaupun pengumpulan sampah automatik disediakan oleh Java, ia tidak memastikan bahawa program Java tidak akan hilang dari memori kerana ada kemungkinan penciptaan objek Java dilakukan pada kecepatan yang lebih cepat dibandingkan dengan pengumpulan sampah yang mengakibatkan mengisi semua sumber memori yang ada.

Oleh itu, pengumpulan sampah membantu mengurangkan kemungkinan program hilang dari ingatan tetapi tidak memastikannya.

Q79. Bolehkah kita mempunyai jenis pengembalian lain selain tidak sah untuk kaedah utama?

Jawapan: Tidak, kaedah utama kelas Java hanya boleh mempunyai jenis pengembalian yang tidak sah agar program berjaya dilaksanakan.

Walaupun begitu, jika anda benar-benar mesti mengembalikan nilai setelah menyelesaikan kaedah utama, anda boleh menggunakan System.exit (status int)

Q80. Saya ingin menjangkau semula dan menggunakan objek setelah sampah dikumpulkan. Bagaimana mungkin?

Jawapan: Setelah objek dihancurkan oleh pemungut sampah, benda itu tidak lagi ada di timbunan dan ia tidak dapat diakses lagi. Tidak ada cara untuk merujuknya lagi.

Q81. Dalam pemrograman benang Java, metode mana yang harus dilaksanakan untuk semua utas?

Jawapan: Run () adalah kaedah antara muka Runnable yang mesti dilaksanakan oleh semua utas.

S82. Saya ingin mengawal sambungan pangkalan data dalam program saya dan mahu hanya satu utas yang dapat membuat sambungan pangkalan data pada satu masa. Bagaimana saya boleh melaksanakan logik ini?

Jawapan: Ini dapat dilaksanakan dengan menggunakan konsep penyegerakan. Kod berkaitan pangkalan data boleh diletakkan dalam kaedah yang menggunakan kata kunci yang diselaraskan sehingga hanya satu utas yang dapat mengaksesnya pada satu masa.

Q83. Bagaimana pengecualian dapat dilemparkan secara manual oleh pengaturcara?

Jawapan: Untuk membuang pengecualian dalam blok kod secara manual, kata kunci lemparan digunakan. Kemudian pengecualian ini ditangkap dan dikendalikan di blok tangkapan.

public void topMethod() {try {excMethod();} catch (ManualException e) {}}public void excMethod {String name = null;if (name == null) {throw (new ManualException("Exception thrown manually ");}}

Q84. Saya mahu kelas saya dikembangkan sedemikian rupa sehingga tidak ada kelas lain (bahkan kelas turunan) yang dapat membuat objeknya. Bagaimana saya boleh melakukannya?

Jawapan: Sekiranya kita menyatakan pembina kelas sebagai peribadi, ia tidak akan dapat diakses oleh kelas lain dan oleh itu, tidak ada kelas lain yang dapat memberikannya dan pembentukan objeknya akan terhad kepada dirinya sendiri.

S85. Bagaimana objek disimpan di Java?

Jawapan: Dalam java, setiap objek ketika dibuat mendapat ruang memori dari timbunan. Apabila objek dihancurkan oleh pengumpul sampah, ruang yang diperuntukkan kepadanya dari timbunan dialokasikan semula ke timbunan dan tersedia untuk objek baru.

Q86. Bagaimana kita dapat mencari ukuran sebenar objek di timbunan?

Jawapan: Di java, tidak ada cara untuk mengetahui ukuran objek yang tepat di timbunan.

S87. Antara kelas berikut, yang manakah akan mempunyai lebih banyak memori yang diperuntukkan?

Kelas A: Tiga kaedah, empat pemboleh ubah, tanpa objek

Kelas B: Lima kaedah, tiga pemboleh ubah, tanpa objek

Jawapan: Memori tidak diperuntukkan sebelum penciptaan objek. Oleh kerana untuk kedua kelas, tidak ada objek yang dibuat sehingga tidak ada memori yang dialokasikan di timbunan untuk kelas mana pun.

Q88. Apa yang berlaku sekiranya pengecualian tidak ditangani dalam program?

Jawapan: Sekiranya pengecualian tidak dikendalikan dalam program menggunakan blok tangkapan, program akan dibatalkan dan tidak ada pernyataan yang dilaksanakan setelah pernyataan yang menyebabkan pengecualian dilemparkan.

Q89. Saya mempunyai beberapa pembina yang ditentukan dalam kelas. Adakah mungkin untuk memanggil konstruktor dari badan pembina yang lain?

Jawapan: Sekiranya kelas mempunyai pelbagai pembina, mungkin memanggil satu pembina dari badan yang lain menggunakan ini () .

Q90. Apa yang dimaksudkan dengan kelas tanpa nama?

Jawapan: Kelas tanpa nama adalah kelas yang ditentukan tanpa nama dalam satu baris kod menggunakan kata kunci baru.

Sebagai contoh, dalam kod di bawah ini kita telah menentukan kelas tanpa nama dalam satu baris kod:

public java.util.Enumeration testMethod(){return new java.util.Enumeration(){@Overridepublic boolean hasMoreElements(){// TODO Auto-generated method stubreturn false;}@Overridepublic Object nextElement(){// TODO Auto-generated method stubreturn null;}}

S91. Adakah cara untuk meningkatkan ukuran larik setelah pengisytiharannya?

Jawapan: Susun atur adalah statik dan setelah kami menentukan ukurannya, kami tidak dapat mengubahnya. Sekiranya kita ingin menggunakan koleksi seperti itu di mana kita memerlukan perubahan ukuran (tidak ada item), kita harus lebih memilih vektor daripada pelbagai.

S92. Sekiranya aplikasi mempunyai beberapa kelas di dalamnya, tidak mengapa mempunyai kaedah utama di lebih dari satu kelas?

Jawapan: Sekiranya terdapat kaedah utama di lebih dari satu kelas dalam aplikasi java, ia tidak akan menimbulkan masalah kerana titik masuk untuk aplikasi apa pun akan menjadi kelas tertentu dan kod akan bermula dari kaedah utama kelas tertentu sahaja.

Q93. Saya mahu mengekalkan data objek untuk digunakan kemudian. Apakah pendekatan terbaik untuk melakukannya?

Jawapan: Cara terbaik untuk mengekalkan data untuk penggunaan masa depan adalah dengan menggunakan konsep serialisasi.

Q94. Apakah kelas tempatan di Jawa?

Jawapan: Di Jawa, jika kita menentukan kelas baru di dalam blok tertentu, ia disebut kelas tempatan. Kelas sedemikian mempunyai ruang lingkup tempatan dan tidak boleh digunakan di luar blok yang ditentukan.

Q95. String dan StringBuffer kedua-duanya mewakili objek String. Bolehkah kita membandingkan String dan StringBuffer di Java?

Jawapan: Walaupun String dan StringBuffer keduanya mewakili objek String, kami tidak dapat membandingkannya satu sama lain dan jika kami cuba membandingkannya, kami mendapat ralat.

S96. API mana yang disediakan oleh Java untuk operasi pada set objek?

Jawapan: Java menyediakan API Koleksi yang menyediakan banyak kaedah berguna yang dapat diterapkan pada sekumpulan objek. Beberapa kelas penting yang disediakan oleh Collection API merangkumi ArrayList, HashMap, TreeSet dan TreeMap.

Q97. Bolehkah kita memasukkan jenis lain ke Jenis Boolean dengan pemutus jenis?

Jawapan: Tidak, kami tidak boleh menghantar jenis primitif lain ke jenis data Boolean atau juga boleh menghantar jenis data Boolean ke jenis data primitif yang lain.

Q98. Bolehkah kita menggunakan jenis pengembalian yang berbeza untuk kaedah apabila diganti?

Jawapan: Keperluan asas kaedah penggantian di Java adalah kaedah yang diganti harus mempunyai nama dan parameter yang sama. Tetapi kaedah boleh diganti dengan jenis pengembalian yang berbeza selagi jenis pengembalian yang baru meluaskan yang asal.

Contohnya, kaedah mengembalikan jenis rujukan.

Class B extends A {A method(int x) {//original method}B method(int x) {//overridden method}}

Q99. Apakah kelas asas semua kelas pengecualian?

Jawapan: Di Java, Java.lang.Throwable adalah kelas super dari semua kelas pengecualian dan semua kelas pengecualian berasal dari kelas asas ini.

Q100. Apakah pesanan panggilan pembina dalam warisan?

Jawapan: Sekiranya berlaku pewarisan, apabila objek baru dari kelas turunan dibuat, pertama-tama pembina kelas super dipanggil dan kemudian pembina kelas yang berasal dipanggil.

Persiapan Untuk Temuduga Pekerjaan Anda !!! Ikuti Tutorial Java untuk lebih bersedia.

Soalan wawancara Java terperinci pdf ini akan membantu anda menghilangkan keraguan mengenai soalan wawancara Java dan juga akan membantu anda untuk menghentikan temu bual tersebut.