JavaRush /Blog Java /Random-MS /Coffee break #101. 19 Soalan Temuduga Penting Java dan Ja...

Coffee break #101. 19 Soalan Temuduga Penting Java dan Jawapan Contoh Ringkas

Diterbitkan dalam kumpulan
Sumber: Hackernoon Berikut adalah beberapa soalan dan jawapan yang sering muncul dalam temu bual Java.

1. Apakah Java Development Kit (JDK)?

JDK ialah kit pembangunan perisian yang merangkumi alatan dan perpustakaan yang diperlukan untuk membangunkan aplikasi Java.

2. Apakah yang Java Runtime Environment (JRE) lakukan?

JRE merujuk kepada Persekitaran Runtime di mana Java bytecode dijalankan. JRE mengekalkan fail dan perpustakaan untuk masa jalan.

3. Apakah yang dilakukan oleh Mesin Maya Java (JVM)?

JVM ialah mesin abstrak yang menyediakan persekitaran runtime di mana Java bytecode boleh dilaksanakan.

4. Java adalah platform bebas. kenapa?

Dalam mana-mana bahasa pengaturcaraan lain, kod sumber disusun menjadi kod boleh laku, dan kod itu mungkin tidak dijalankan pada semua platform. Dengan menggunakan JVM kami boleh membuat bytecode boleh difahami untuk mana-mana platform dan bytecode ini adalah platform bebas. Walaupun JVM berbeza untuk setiap platform, Java adalah platform bebas kerana ia tidak mempunyai pergantungan pada sebarang jenis platform.

5. Java bukan 100% berorientasikan objek. kenapa?

Kerana Java menggunakan lapan jenis data primitif seperti boolean, byte, char, int, float, double, long, short yang bukan objek.

6. Apakah pembina dalam Java?

Pembina ialah blok kod yang digunakan untuk memulakan objek. Sintaks:
class DemoClass
{
   // constructor name is same as class name
   DemoClass()
   {
      ....
   }
}
// calls DemoClass() constructor
DemoClass obj = new DemoClass();
Contoh:
public class ConstructorDemo
{
   int a; // class attribute
   // create constructor for class ConstructorDemo
   ConstructorDemo()
   {
      a = 26; // initial value for class attribute 'a'
   }
   public static void main(String[] args)
   {
      // creating object for ConstructorDemo class
      // here we're calling constructor ConstructorDemo()
      ConstructorDemo obj = new ConstructorDemo();
      System.out.println(obj.a);
   }
}
Keputusan:
26

7. Apakah yang dilakukan oleh kelas tunggal?

Kelas Singleton hanya boleh mempunyai satu objek (contoh kelas) pada satu masa. Selepas objek dicipta dan kami cuba membuat instantiate kelas tunggal , pembolehubah baharu juga menunjukkan kepada objek pertama yang dicipta.

8. Apakah kelas pembalut dalam Java?

Kelas pembungkus membenarkan jenis data primitif ditukar kepada objek dan sebaliknya. Contoh:
int a = 7; // using primitive datatype
Integer a = new Integer(7); // using wrapper class

9. Apakah perbezaan antara operator == dan kaedah kesamaan dalam Java?

Secara umum, == ialah operator dan equals() ialah kaedah. Kami menggunakan operator == untuk merujuk membandingkan objek pada timbunan. Tiada konsep operator lebih muatan di Jawa. Walaupun begitu, operator == digunakan untuk menyemak sama ada alamat dua objek adalah sama atau tidak. Iaitu, operator == menyemak sama ada kedua-dua objek menghala ke lokasi memori yang sama atau tidak. Operator == juga digunakan untuk membandingkan jenis objek dan jenis primitif seperti boolean. Manakala kaedah equals() kelas String membandingkan kandungan dua objek.

10. Apakah konsep OOP dalam Java?

  • Abstraksi ditakrifkan sebagai menyembunyikan pelaksanaan dalaman dan hanya memaparkan maklumat yang diperlukan.
  • Warisan ialah prosedur menukar semua sifat dan tingkah laku kelas induk (superclass) kepada kelas anak (subclass).
  • Enkapsulasi ialah prosedur mengikat data atau pembolehubah dan kaedah bersama-sama.
  • Polimorfisme secara literal bermaksud banyak bentuk. Polimorfisme ialah keupayaan kaedah untuk melaksanakan tugas yang berbeza. Ini boleh dicapai dengan menggunakan kaedah.

11. Mengapakah kaedah main() sentiasa statik di Jawa?

Kerana tidak perlu memanggil kaedah statik pada objek. Jika main() adalah kaedah bukan statik, Mesin Maya Java mesti mencipta objeknya dahulu dan kemudian memanggil kaedah main() , yang akan menyebabkan memori tambahan diperuntukkan.

12. Mengapakah rentetan tidak boleh diubah di Jawa?

Rentetan dalam Java tidak boleh diubah kerana objek String dicache dalam kolam pemalar rentetan .

13. Apakah tatasusunan dan ArrayList dalam Java?

Tatasusunan ialah objek yang mengandungi bilangan tetap elemen daripada jenis yang serupa.
  1. ArrayList ialah sebahagian daripada struktur koleksi.

  2. ArrayList melaksanakan antara muka senarai.

  3. ArrayList ialah tatasusunan berskala yang berkembang secara dinamik apabila elemen ditambah dan mengecut apabila elemen dialih keluar.

  4. Untuk operasi mendapatkan semula yang kerap, Java ArrayList ialah pilihan terbaik . Kerana unsur ArrayList disimpan dalam lokasi memori berturut-turut.

  5. ArrayList tidak boleh mengandungi jenis data primitif seperti int, double, char dan long.

  6. ArrayList boleh mengandungi String dan objek kelas pembalut ( Double , Integer ).

  7. ArrayList membolehkan anda menduplikasi elemen.

  8. ArrayList mengekalkan susunan sisipan.

  9. ArrayList digunakan secara meluas kerana fungsi dan fleksibilitinya. Ia direka untuk menyimpan koleksi objek yang heterogen.

  10. ArrayList boleh mempunyai sebarang bilangan nilai nol.

14. Apakah perbezaan antara HashSet dan HashMap dalam Java?

Dalam HashSet :
  1. Kita boleh menyimpan objek dalam HashSet . Contohnya, HashSet: {"Hello", "World"} .

  2. Urutan sisipan tidak dipelihara. Ia berasaskan kod hash.

  3. Mempunyai kaedah add() .

  4. Melaksanakan antara muka Set .

  5. Tidak membenarkan unsur pendua.

  6. Membenarkan satu nilai nol.

Dalam HashMap :
  1. Dalam HashMap kita boleh menyimpan pasangan kunci dan nilai. Contohnya, {1 -> “Hello”, 2 -> “World”} .

  2. Tidak menyokong susunan sisipan. Ia berdasarkan fungsi pencincangan.

  3. Mempunyai kaedah put() .

  4. Melaksanakan antara muka peta.

  5. Membenarkan nilai pendua. Tidak membenarkan kunci pendua.

  6. Membenarkan satu kunci null dan sebarang bilangan nilai null.

16. Apakah perbezaan antara ini dan super di Jawa?

Kata kunci ini dalam Java:
  1. ini ialah kata kunci yang merupakan pembolehubah rujukan yang merujuk kepada objek semasa.

  2. Boleh digunakan untuk memanggil kaedah kelas semasa secara tersirat.

  3. This() keyword , digunakan untuk memanggil pembina kelas semasa.

  4. Ini boleh digunakan untuk lulus sebagai hujah apabila memanggil kaedah.

Kata kunci super dalam Java:
  1. Kata kunci super ialah pembolehubah rujukan yang digunakan untuk merujuk kepada objek segera kelas induk.

  2. super boleh digunakan untuk terus memanggil kaedah kelas induk, pembina kelas induk, dan untuk mengakses kaedah kelas asas.

17. Apakah pernyataan break dan continue dalam Java?

Jika pernyataan putus berlaku dalam gelung, gelung akan tamat dan kawalan akan berpindah ke pernyataan seterusnya dalam gelung yang sama. Contoh:
public class Example
{
   public static void main(String[] args)
   {
      for(int a = 1; a <= 10; a++)
      {
         if(a == 3)
         {
            // breaking loop
            break;
         }
         System.out.println(a);
      }
   }
}
Keputusan:
12
Pernyataan continue bergerak ke lelaran seterusnya bagi gelung bergantung pada keadaan tertentu. Contoh:
public class Example
{
   public static void main(String[] args)
   {
      for(int a = 1; a <= 10; a++)
      {
         if(a % 2 != 0)
         {
            continue;
         }
         System.out.println(a + " ");
      }
   }
}
Keputusan:
2 4 6 8 10

18. Apakah itu pengubahsuai akses dalam Java?

Pengubah suai akses mentakrifkan had atau skop pembolehubah, pembina, kelas atau kaedah. Terdapat empat jenis pengubah suai akses dalam Java:
  1. Pengubah suai akses peribadi.
  2. Pengubah suai akses yang dilindungi.
  3. Pengubah suai perkongsian.
  4. Pengubah suai akses lalai.

19. Apakah perbezaan antara untuk gelung dan untuk setiap gelung di Jawa?

untuk gelung :
  1. Tidak mempunyai urutan boleh laku. Dalam gelung for, kita boleh menukar kaunter mengikut kehendak kita.
  2. Muncul pada awalnya, dalam JDK 1.
  3. Tidak perlu melaksanakan antara muka.
  4. Boleh mempunyai akses kepada indeks. Oleh itu, adalah mungkin untuk menggantikan elemen dalam tatasusunan.
  5. Kaunter boleh bertambah dan berkurang.
Untuk setiap gelung :
  1. Dilakukan secara berurutan. Kaunter bertambah satu.
  2. Mula-mula muncul dalam JDK 5.
  3. Untuk lelaran ke atas bekas menggunakan gelung untuk setiap, bekas mesti melaksanakan antara muka Boleh Diulang.
  4. Tidak mungkin untuk menggantikan elemen pada indeks ini kerana indeks tatasusunan tidak boleh diakses.
  5. Hanya boleh berulang dalam susunan yang semakin meningkat, tidak boleh menurun.
Contoh perbezaan antara untuk setiap gelung dan untuk gelung :
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class DifferenceBetween
{
   public static void main(String[] args)
   {
      List<String> players = new ArrayList<>(Arrays.asList("Virat", "Rohit", "Dhoni"));
      // iterate over List using for loop
      System.out.println("using for loop: ");
      for(int a = 0; a < players.size(); a++)
      {
         System.out.println(players.get(a));
      }
      // iterate over List using enhanced for loop
      System.out.println("using for each loop: ");
      for(String str : players)
      {
         System.out.println(str);
      }
   }
}
Keputusan untuk dan untuk setiap gelung:
Virat Rohit Dhoni.
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION