Java intervjuu küsimused ja vastused (Uuendatud 2019 jaoks)

Lang L: none (table-of-contents):

Anonim

Sissejuhatus värskete taotlejate Java-intervjuu küsimustesse

Kui otsite Java-ga seotud tööd, peate valmistuma Java-intervjuu küsimusteks värskematele taotlejatele. Ehkki iga intervjuu on erinev ja ka töö maht on erinev, saame teid aidata kõige populaarsemate Java-intervjuu küsimuste ja vastustega, mis aitavad teil oma Java-intervjuus hüppe teha ja teile edu tuua.

Allpool on populaarsemad Java intervjuu küsimused, mida küsitakse intervjuu käigus sageli

1. Erinevus Stringipuhvri ja String Builderi vahel Java-s

Vastus:
See on üks küsitlejate lemmikküsimusi, kuid kandidaadid vastavad sellele sageli valesti.

Siin on mõned märkimisväärsed erinevused keelpuhvri ja keelpuhvri paremaks mõistmiseks

1) StringBuilder on klassi StringBuffer sünkroonimata versioon. Meetodid rakenduses StringBuilder
Nt kogu append () meetodi ülekoormatud versiooni ei sünkroonita.
2) StringBuilder töötab kiiremini kui StringBuffer, kuna sünkroonitud meetoditega seotud lukkude hankimisel ja vabastamisel pole üldkulusid.
3) StringBufferit peetakse niidikindlaks ja StringBuilderit mitte, sest kui sellist sünkroonimist on vaja, siis on parem kasutada klassi StringBuffer. Klassi StringBuilder juhtumeid ei saa mitme lõime vahel jagada
4) StringBuffer on vana klass; see on JDK-sse lisatud juba esimesest versioonist alates, samas kui StringBuilder on suhteliselt uuem klass
5) StringBufferi ja StringBuilderi kohta on kõige olulisem fakt, et kui stringi liitmine toimub operaatori + abil, teisendab Java selle kõne sisemiselt vastavaks StringBuilder append () meetodiklassiks. Näiteks teisendatakse “üks” + “kaks” + “kolm” uueks StringBuilderiks () .append (“üks”) .lisa (“kaks”) ja lisa (“kolm”).

2. Java programm täisarvu suurima ja väikseima arvu leidmiseks

Vastus:
Sellele küsimusele vastamiseks lihtne 5 osuti

  • Looge Java-lähtefail nimega MaximumMinimumArrayDemo.java ja kopeerige kood, et see teie lemmik-IDE-s kompileerida ja käivitada
  • Programmi jaoks edastatud int-massiivi suurima ja väikseima arvu printimiseks looge meetod, mida nimetatakse suurimaks ja väikseimaks (int () numbriks).
  • Kasutage massiivi maksimaalsete ja minimaalsete väärtuste salvestamiseks kahte suurimat ja väikseimat muutujat. Algselt suurim algväärtus on Integer.MIN_VALUE ja väikseim lähtestatakse Integer.MAX_VALUE.
  • Kõigi silmuse iteratsioonide suhtes võrrelge praegust arvu suurimaga väikseimaga ja värskendage vastavalt.
  • Kui arv on suurem kui suurim, ei saa see olla väiksem kui väikseim, mis tähendab, et te ei pea kontrollima, kas esimene tingimus on tõene, sellepärast oleme kasutanud if-else koodiplokki, kus muu osa on ainult täitke, kui esimene tingimus ei vasta tõele.

Järgnevalt on toodud loogika Java massiivist suurima elemendi leidmiseks.

Muutujale Integer.MAX_VALUE määramise asemel määrasime massiivist esimese elemendi.

3. Mis vahe on C ++ ja Java vahel?

Vastus:
C ++ ja Java on süntaktilistes võrdlustes sarnased. Allpool on toodud erinevused:

    • Java on mitme keermega
    • Java-l pole viiteid
    • Java-l on automaatne mäluhaldus (prügivedu)
    • Java on platvormist sõltumatu
    • Java on sisseehitatud tugi kommentaaride dokumenteerimiseks
    • Java pole operaatori ülekoormatud

Java ei anna mitu pärandit

  • Java-s pole hävitajaid

4. Erinevus abstraktse klassi ja liidese vahel?

Vastus:
Mitu pärandit:

Abstraktne klass saab pärida ainult ühe abstraktse klassi; klass võib liideses siiski rakendada mitmeid liideseid. See tõestab, et liides toetab mitmekordist pärandit, abstraktne klass aga mitte.

Rakendamine:

Abstraktne klass võib pakkuda vaikekoodi, kuna see sisaldab nii puudulikke kui ka täielikke liikmeid, samas kui liides ei saa ühtegi koodi pakkuda, kuna see sisaldab ainult mittetäielikku liiget

Väljad
Väljad ja piirangud saame määratleda abstraktses klassis, samas kui liideses ei saa ühtegi välja määratleda

Kiirus
Abstraktne klass on liidesega võrreldes kiire, kuna viimane nõuab meetodi leidmiseks vastavasse klassi rohkem aega

Kasutamine
Abstraktne klass saab pildi, kui tahame jagada ühist funktsionaalsust vanema ja lapse suhetes, samas kui liidese abil määratletakse ja jõustatakse polümorfism, tootmisest lahtiühendamine ja standardimine

5. Erinevus Java Java privaatse, kaitstud, avaliku ja paketi modifikaatori või märksõna vahel

Vastus:
privaatne vs avalik vs kaitstud pakett Java-s

Java-l on nimelt neli juurdepääsu modifikaatorit; privaatsel, kaitstud, avalikul ja paketttasandil

pakettaseme juurdepääsu loetakse Java pakutavaks vaiketasemeks, kui juurdepääsu modifikaatorit ei leita

Need juurdepääsu muutmise funktsioonid piiravad juurdepääsu klassile, meetodile või muutujale, mille suhtes see kehtib

Allpool kirjeldatakse iga pääsemuunduri funktsioone ja seda, kui erinevad nad üksteisest on

privaatne märksõna Java-s

  • Javas asuvat privaatset modifikaatorit saab rakendada Java välja liikmesväljale, meetodile või pesastatud klassile.
  • Kõrgetasemelise klassi privaatset modifikaatorit ei saa kasutada.
  • privaatsed muutujad, meetodid ja klass on juurdepääsetavad ainult klassis, millel need on deklareeritud.
  • erastab Encapsulation Java API kõrgeima vormi ja seda tuleks kasutada nii palju kui võimalik.

Parim kodeerimistava on Java-s kuulutada muutuja vaikimisi privaatseks. Privaatsele meetodile saab helistada ainult sellest klassist, kus see on deklareeritud

paketi või vaikenimi juurdepääsutase Java-s

  • pakett on märksõna, mida kasutatakse paketi deklareerimiseks Java-s; pakett on kataloog, kuhu kuulub Java klass.
  • paketi või vaikelitsentsi tase on suuruselt teine ​​piirav juurdepääsu modifikaator pärast privaatset ja pakett-privaatseks kuulutatud muutuja, meetod või klass on juurdepääsetav ainult sellel paketil, kuhu ta kuulub.

Vaikemuundaja puhul on hea see, et tipptasemel klass võib olla ka pakett-privaatne, kui klassitasemel juurdepääsu modifikaatorit pole.

kaitstud märksõna Java

Erinevus privaatse ja kaitstud märksõna vahel on see, et kaitstud meetod, muutuv või pesastatud klass on juurdepääsetav mitte ainult klassis, pakendi sees, vaid ka alaklassis väljaspool pakki.
Kui kuulutate muutuva kaitsega, tähendab see, et igaüks saab seda teie klassi laiendamisel kasutada. Ka kõrgemat klassi ei saa kaitsta.

avalik märksõna Java-s

Avalik on Java programmeerimiskeeles kõige vähem piirav juurdepääsu modifikaator ja selle halb tava kuulutada väli, meetod või klass vaikimisi avalikuks, sest kui see avalikustatakse, on klassi sisestruktuuri muutmine väga keeruline, kuna see mõjutab kõiki kliente, kes kasutavad seda.

Klassi või astme muutuja avalikuks saamine rikkus ka kapseldamise põhimõtet, mis pole üldse hea ja mõjutab halvasti hooldust

Soovitatav artikkel

See on juhend Java intervjuu küsimuste ja vastuste loendisse, et kandidaat saaks neid Java intervjuu küsimusi hõlpsalt lahendada. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Java arendaja intervjuu küsimused
  2. Olulised Java mitme keermega intervjuu küsimused
  3. J2EE intervjuu küsimused ja vastused
  4. Java Stringi intervjuu küsimus ja vastused
  5. Java 8 intervjuu küsimused ja vastused