JavaRush /Java Blog /Random-TL /Coffee break #101. 19 Mahahalagang Tanong sa Panayam sa J...

Coffee break #101. 19 Mahahalagang Tanong sa Panayam sa Java at Maikling Sample na Sagot

Nai-publish sa grupo
Source: Hackernoon Narito ang ilang mga tanong at sagot na madalas lumalabas sa mga panayam sa Java.

1. Ano ang Java Development Kit (JDK)?

Ang JDK ay isang software development kit na kinabibilangan ng mga tool at library na kailangan para bumuo ng mga Java application.

2. Ano ang ginagawa ng Java Runtime Environment (JRE)?

Ang JRE ay tumutukoy sa Runtime Environment kung saan tumatakbo ang Java bytecode. Ang JRE ay nagpapanatili ng mga file at library para sa runtime.

3. Ano ang ginagawa ng Java Virtual Machine (JVM)?

Ang JVM ay isang abstract machine na nagbibigay ng runtime na kapaligiran kung saan ang Java bytecode ay maaaring isagawa.

4. Ang Java ay independyente sa platform. Bakit?

Sa anumang iba pang programming language, ang source code ay pinagsama-sama sa executable code, at ang code ay maaaring hindi tumakbo sa lahat ng platform. Sa pamamagitan ng paggamit ng JVM, magagawa nating maunawaan ang bytecode para sa anumang platform at ang bytecode na ito ay independiyenteng platform. Bagama't iba ang JVM para sa bawat platform, ang Java ay independyente sa platform dahil wala itong dependency sa anumang uri ng platform.

5. Ang Java ay hindi 100% object oriented. Bakit?

Dahil ang Java ay gumagamit ng walong primitive na uri ng data tulad ng boolean, byte, char, int, float, double, long, short na hindi mga object.

6. Ano ang mga constructor sa Java?

Ang isang constructor ay isang bloke ng code na ginagamit upang simulan ang mga bagay. Syntax:
class DemoClass
{
   // constructor name is same as class name
   DemoClass()
   {
      ....
   }
}
// calls DemoClass() constructor
DemoClass obj = new DemoClass();
Halimbawa:
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);
   }
}
Resulta:
26

7. Ano ang ginagawa ng singleton class?

Ang mga singleton class ay maaari lamang magkaroon ng isang object (class instance) sa isang pagkakataon. Pagkatapos malikha ang object at sinusubukan naming i-instantiate ang singleton class , tumuturo din ang bagong variable sa unang bagay na nilikha.

8. Ano ang mga klase ng wrapper sa Java?

Ang mga klase ng wrapper ay nagbibigay-daan sa mga primitive na uri ng data na ma-convert sa isang object at vice versa. Halimbawa:
int a = 7; // using primitive datatype
Integer a = new Integer(7); // using wrapper class

9. Ano ang pagkakaiba sa pagitan ng == operator at ang paraan ng pagkakapantay-pantay sa Java?

Sa pangkalahatan, ang == ay isang operator at katumbas () ay isang pamamaraan. Ginagamit namin ang == operator upang i-reference ang paghahambing ng mga bagay sa heap. Walang konsepto ng overloading ng operator sa Java. Sa kabila nito, ang == operator ay ginagamit upang suriin kung ang address ng dalawang bagay ay pareho o hindi. Iyon ay, sinusuri ng operator ng == kung ang parehong mga bagay ay tumuturo sa parehong lokasyon ng memorya o hindi. Ginagamit din ang == operator upang ihambing ang mga uri ng bagay at primitive na uri tulad ng boolean. Habang ang equals() method ng String class ay inihahambing ang mga nilalaman ng dalawang bagay.

10. Ano ang mga konsepto ng OOP sa Java?

  • Ang abstraction ay tinukoy bilang pagtatago ng panloob na pagpapatupad at pagpapakita lamang ng kinakailangang impormasyon.
  • Ang inheritance ay ang pamamaraan ng pag-convert ng lahat ng mga katangian at pag-uugali ng isang parent class (superclass) sa isang child class (subclass).
  • Ang Encapsulation ay ang pamamaraan ng pagsasama-sama ng data o mga variable at pamamaraan.
  • Ang polymorphism ay literal na nangangahulugang maraming anyo. Ang polymorphism ay ang kakayahan ng isang pamamaraan na magsagawa ng iba't ibang gawain. Ito ay maaaring makamit gamit ang mga pamamaraan.

11. Bakit palaging static ang main() method sa Java?

Dahil hindi na kailangang tumawag ng isang static na pamamaraan sa isang bagay. Kung ang main() ay magiging isang non-static na pamamaraan, ang Java Virtual Machine ay dapat munang lumikha ng object nito at pagkatapos ay tawagan ang main() method , na magiging sanhi ng karagdagang memorya upang mailaan.

12. Bakit hindi nababago ang mga string sa Java?

Ang mga string sa Java ay hindi nababago dahil ang mga String object ay naka-cache sa string constant pool .

13. Ano ang mga array at ArrayList sa Java?

Ang array ay isang bagay na naglalaman ng isang nakapirming bilang ng mga elemento ng isang katulad na uri.
  1. Ang ArrayList ay bahagi ng istraktura ng koleksyon.

  2. Ipinapatupad ng ArrayList ang interface ng listahan.

  3. Ang ArrayList ay isang scalable array na dynamic na lumalaki habang idinaragdag ang mga elemento at lumiliit habang inaalis ang mga elemento.

  4. Para sa madalas na operasyon sa pagkuha, ang Java ArrayList ay ang pinakamahusay na pagpipilian . Dahil ang mga elemento ng isang ArrayList ay nakaimbak sa magkakasunod na lokasyon ng memorya.

  5. Ang ArrayList ay hindi maaaring maglaman ng mga primitive na uri ng data gaya ng int, double, char at long.

  6. Ang ArrayList ay maaaring maglaman ng String at wrapper class objects ( Double , Integer ).

  7. Binibigyang-daan ka ng ArrayList na i-duplicate ang mga elemento.

  8. Pinapanatili ng ArrayList ang pagkakasunud-sunod ng pagpapasok.

  9. Ang ArrayList ay malawakang ginagamit dahil sa functionality at flexibility nito. Ito ay dinisenyo upang mag-imbak ng magkakaibang mga koleksyon ng mga bagay.

  10. Ang isang ArrayList ay maaaring magkaroon ng anumang bilang ng mga null na halaga.

14. Ano ang pagkakaiba sa pagitan ng HashSet at HashMap sa Java?

Sa HashSet :
  1. Maaari kaming mag-imbak ng mga bagay sa isang HashSet . Halimbawa, HashSet: {"Hello", "World"} .

  2. Ang pagkakasunud-sunod ng pagpapasok ay hindi pinapanatili. Ito ay batay sa hash code.

  3. May paraan ng add() .

  4. Ipinapatupad ang Set interface .

  5. Hindi pinapayagan ang mga dobleng elemento.

  6. Pinapayagan ang isang solong null na halaga.

Sa HashMap :
  1. Sa HashMap maaari tayong mag-imbak ng mga pares ng susi at halaga. Halimbawa, {1 -> “Hello”, 2 -> “World”} .

  2. Hindi sinusuportahan ang insertion order. Ito ay batay sa pag-andar ng hashing.

  3. May put() method .

  4. Ipinapatupad ang interface ng mapa.

  5. Pinapayagan ang mga dobleng halaga. Hindi pinapayagan ang mga duplicate na key.

  6. Pinapayagan ang isang solong null key at anumang bilang ng mga null na halaga.

16. Ano ang pagkakaiba nito sa super sa Java?

Ang keyword na ito sa Java:
  1. ito ay isang keyword na isang reference variable na tumutukoy sa kasalukuyang object.

  2. Maaaring gamitin upang implicitly na tawagan ang kasalukuyang pamamaraan ng klase.

  3. Ang this() keyword , na ginamit upang tawagan ang kasalukuyang constructor ng klase.

  4. Ito ay maaaring gamitin upang pumasa bilang isang argumento kapag tumatawag ng isang pamamaraan.

Super keyword sa Java:
  1. Ang super keyword ay isang reference na variable na ginagamit upang sumangguni sa agarang object ng parent class.

  2. super ay maaaring gamitin upang direktang tumawag sa isang paraan ng isang parent class, isang constructor ng isang parent na klase, at upang ma-access ang mga pamamaraan ng isang base class.

17. Ano ang pahayag ng break at continue sa Java?

Kung ang isang break na pahayag ay nangyari sa isang loop, ang loop ay magtatapos at ang kontrol ay ipapasa sa susunod na pahayag sa parehong loop. Halimbawa:
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);
      }
   }
}
Resulta:
12
Ang continue statement ay lilipat sa susunod na pag-ulit ng loop depende sa isang partikular na kundisyon. Halimbawa:
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 + " ");
      }
   }
}
Resulta:
2 4 6 8 10

18. Ano ang mga access modifier sa Java?

Tinutukoy ng mga access modifier ang limitasyon o saklaw ng isang variable, constructor, class, o method. Mayroong apat na uri ng mga access modifier sa Java:
  1. Pribadong access modifier.
  2. Protektadong access modifier.
  3. Pagbabahagi ng modifier.
  4. Default na access modifier.

19. Ano ang pagkakaiba sa pagitan ng para sa loop at para sa bawat loop sa Java?

para sa loop :
  1. Walang executable sequence. Sa para loop, maaari naming baguhin ang counter ayon sa gusto namin.
  2. Lumitaw sa pinakasimula, sa JDK 1.
  3. Hindi na kailangang ipatupad ang interface.
  4. Maaaring magkaroon ng access sa index. Samakatuwid, posibleng palitan ang isang elemento sa isang array.
  5. Ang counter ay maaaring tumaas at bumaba.
Para sa bawat loop :
  1. Naisasagawa nang sunud-sunod. Ang counter ay tumaas ng isa.
  2. Unang lumabas sa JDK 5.
  3. Upang umulit sa mga container gamit ang para sa bawat loop, dapat ipatupad ng container ang Iterable na interface.
  4. Hindi posibleng palitan ang elemento sa index na ito dahil hindi ma-access ang array index.
  5. Maaari lamang umulit sa pagtaas ng pagkakasunud-sunod, hindi maaaring bawasan.
Halimbawa ng pagkakaiba sa pagitan ng para sa bawat isa at para sa mga loop :
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);
      }
   }
}
Resulta para sa at para sa bawat loop:
Virat Rohit Dhoni.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION