- Maglumatlary ýene bir gezek gaýtalamazlyk üçin bu makalalar tapgyry bilen kesişýän soraglara geçerin. Bu materiallary okamagy maslahat berýärin, sebäbi olarda iň köp ýaýran (meşhur) Java Core söhbetdeşlik soraglary bar.
- DOU-daky soraglar ukrain dilinde berilýär, ýöne bu ýerde rus dilinde hemme zat bolar.
- Jogaplary has jikme-jik düşündirip bolar, ýöne başarmaryn, sebäbi şondan bäri her soraga jogap tutuş bir makalany alyp biler. Islendik söhbetdeşlikde sizden beýle jikme-jik soramazlar.
11. Obýekt synpynyň ähli usullaryny atlandyryň
Obýekt synpynyň 11 usuly bar:- Klass <?> GetClass () - häzirki obýektiň synpyny almak;
- int hashCode () - häzirki obýektiň hash koduny almak;
- boolean deňdir (Obýektiň garşylygy) - häzirki obýekti başga biri bilen deňeşdirmek;
- Obýekt klony () - häzirki obýektiň göçürmesini döretmek we yzyna gaýtarmak;
- String toString () - obýektiň setir görnüşini almak;
- void notify () - bu obýektiň monitorynda garaşýan bir sapagy oýarmak (sapak saýlamak tötänleýin);
- void notifyAll () - bu obýektiň monitorynda garaşýan ähli sapaklary oýarýar;
- boş garaşmak () - häzirki sapagy häzirki monitorda garaşma tertibine geçirýär (doňdurýar), diňe käbirleri habar berýän ýa-da habar berýänçä, diňe sinhron blokda işleýär;
- boş garaşmak (uzak wagt gutarmak) - häzirki monitordaky häzirki sapagy (häzirki sinhronlaşdyrylan görnüşde) doňdurýar, ýöne bu ýagdaýdan çykmak üçin taýmer bilen (ýa-da ýene-de: habardar bolýança ýa-da habardar bolýança)
- boş garaşmak (uzak wagt gutarmak, int nanos) - ýokarda beýan edilen usul bilen meňzeş, ýöne doňmakdan çykmak üçin has takyk taýmerler bilen usul;
- void finalize () - bu obýekti pozmazdan ozal, zibil ýygnaýjy bu usuly çagyrýar (ahyrsoňy). Basylyp alnan çeşmeleri arassalamak üçin ulanylýar.
12. Resurslar bilen iş salyşanyňyzda synap görmek bilen ahyrsoňy synap görmegiň arasynda näme tapawut bar?
Adatça, ahyrky synanyşyk ulanylanda , ahyrky blok serişdeleri ýapmak üçin ulanyldy. Java 7, çeşmeleri boşatmak üçin synanyşygyň meňzeş , ýöne has ykjam we okalýan operatiw synanyşygyň täze görnüşini hödürledi . Synag-ahyrsoňy nähili boljakdygyny ýadymyzdan çykaralyň :String text = "some text......";
BufferedWriter bufferedWriter = null;
try {
bufferedWriter = new BufferedWriter(new FileWriter("someFileName"));
bufferedWriter.write(text);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Indi bu kody täzeden ýazalyň, ýöne synanyşyk çeşmelerini ulanyp :
String text = "some text......";
try(BufferedWriter bufferedWriter =new BufferedWriter(new FileWriter("someFileName"))) {
bufferedWriter.write(text);
} catch (IOException e) {
e.printStackTrace();
}
Näme-de bolsa aňsatlaşýar, şeýlemi? Simplönekeýleşdirmekden başga-da birnäçe nokat bar:
-
Çeşmeler bilen synanyşykda , gabygyň içinde yglan edilen çeşmeler (ýapylar) “AutoCloseable” interfeýsini we ýeke-täk usulyny ýapmaly () .
Closeakyn usul gutarnykly blokda ýerine ýetirilýär , ýogsam programma berlen çeşmäni nädip ýapmalydygyna nädip düşüner?
Resourcesöne, ähtimal, çeşmeleriň ýerine ýetirilişini we ýapmak usulyny seýrek ýazarsyňyz.
-
Blok ýerine ýetirilişiniň yzygiderliligi:
- blokirlemäge synanyşyň .
- Ahyrsoňy . _
- Öňki ädimlerde kadadan çykmalary saklaýan blok .
- Ahyrsoňy aýdyň .
Düzgün bolşy ýaly, sanawda has pes görünýän kadadan çykmalar has ýokary görünýänleri kesýär.
13. Bitwise amallar näme?
Bitwise amallary, logiki amallary we bitwise smenalary öz içine alýan bit setirlerindäki amallardyr. Logiki amallar:-
bitwise AND - bit bahalaryny deňeşdirýär we amalda 0 (ýalan) kesgitlenen islendik bit netijede degişli biti 0 hökmünde kesgitleýär, ýagny iki bahada deňeşdirilende bit 1 (dogry) bolsa, Netije hem 1 bolar.
- AND , &
Mysal: 10111101 & 01100111 = 00100101
-
birneme ýa-da öňki biriniň ters işleýşi. 1-e düzülen islendik bit, netijede 1-e meňzeş biti düzýär we şoňa görä-de, deňeşdirilen bahalaryň ikisinde-de 0 bolan bolsa, netijede bit hem 0 bolar.
- OR , |
Mysal: 10100101 | 01100011 = 11100111
-
tersine NOTOK - bir bahada ulanylýar, bitleri süýşürýär (tersine). 1agny, 1 bolan bitler 0 bolar; we 0 bolanlar 1 bolar.
Bellendi - NOTOK , ~
Mysal: ~ 10100101 = 01011010
bitwise eksklýuziw OR - bit bahalaryny deňeşdirýär we iki bahada bit 1-e deň bolsa, netije 0 bolar, iki bahada-da bit 0 bolsa, netije 0 bolar. netijäniň 1-e deň bolmagy üçin bitleriň diňe biri 1-e, ikinjisi 0-a deň bolmaly. - XOR , ^ diýlip atlandyrylýar
Mysal: 10100101 ^ 01100011 = 11000110
- 01100011 >> 4 = 00000110
- 01100011 << 3 = 00011000
14. Java-da haýsy üýtgewsiz synplar bar?
Üýtgemez , asyl parametrleriniň üýtgemegine ýol bermeýän obýektdir. Belli bir görnüşdäki täze obýektleri, üýtgetmek isleýän parametrleriňizi yzyna gaýtaryp berýän usullar bolup biler. Käbir üýtgewsiz zatlar:- Java-da iň meşhur üýtgewsiz obýekt String;
- Adaty görnüşleri gurşap alýan sapak sapaklarynyň mysallary: Boolean, Character, Byte, Short, Integer, Long, Double, Float;
- köplenç LARGE sanlary üçin ulanylýan obýektler - BigInteger we BigDecimal;
- Stacktraces-de birlik bolan obýekt (mysal üçin, kadadan çykma stacktrace) StackTraceElement;
- Faýl synpynyň obýekti - faýllary üýtgedip biler, ýöne şol bir wagtyň özünde üýtgewsizdir;
- UUID - köplenç elementler üçin özboluşly id hökmünde ulanylýar;
- java.time paketiniň ähli synp obýektleri;
- Locerli - geografiki, syýasy ýa-da medeni sebiti kesgitlemek üçin ulanylýar.
15. Üýtgemeýän jisimiň adaty zatlardan artykmaçlyklary näme?
- Şeýle zatlar köp sapakly gurşawda ulanylanda howpsuzdyr . Olary ulanmak bilen, sapak ýaryş şertleri sebäpli maglumatlary ýitirmek barada alada etmeli däl. Ordinaryönekeý zatlar bilen işlemekden tapawutlylykda: bu ýagdaýda gaty ünsli pikirlenmeli we obýekti paralel gurşawda ulanmagyň mehanizmlerini işläp düzmeli bolarsyňyz.
- Üýtgedip bolmaýan obýektler kartada gowy düwmelerdir, sebäbi üýtgäp bilýän obýekti ulansaňyz we obýektiň ýagdaýyny üýtgetseňiz, HashMap ulanylanda bulaşyk bolup biler: obýekt henizem bar, egerKey () ulansaňyz , bolmazlygy mümkin tapylýar.
- Üýtgemeýän zatlar, programma işleýän wagtynda hiç haçan üýtgedilmeli üýtgewsiz (hemişelik) maglumatlary saklamak üçin ajaýyp.
- “Şowsuzlyga atom” - üýtgewsiz bir zat kadadan çykma etse, henizem islenmeýän (döwülen) ýagdaýda galmaz.
- Bu synplary synagdan geçirmek aňsat.
- Göçürme konstruktory we klony durmuşa geçirmek ýaly goşmaça mehanizmler zerur däl.
OOP hakda soraglar
16. Umuman, OOP-nyň artykmaçlyklary we prosessual programmirleme bilen deňeşdirilende haýsy artykmaçlyklary bar?
Şeýlelikde, OOP-nyň artykmaçlyklary:- Çylşyrymly programmalar prosessual programmirlemekden has aňsat, sebäbi hemme zat ownuk modullara - biri-biri bilen täsirleşýän obýektlere bölünýär we netijede programmirlemek obýektleriň arasyndaky gatnaşyklara girýär.
- OOP ulanyp ýazylan programmalary üýtgetmek has aňsat (dizaýn düşünjeleri ýerine ýetirilýänçä).
- Ondaky maglumatlar we amallar ýeke-täk birligi emele getirýändigi sebäpli, programmanyň hemme ýerinde hapalanmaýar (köplenç prosessual programmirleme bilen bolýar).
- Maglumat bukjasy ulanyjydan iň möhüm maglumatlary goraýar.
- Şol bir kody dürli maglumatlar bilen gaýtadan ulanmak mümkin, sebäbi synplar köp obýekt döretmäge mümkinçilik berýär, olaryň hersiniň özüne mahsus aýratynlyklary bar.
- Miras we polimorfizm size bar bolan kody gaýtadan ulanmaga we giňeltmäge mümkinçilik berýär (şuňa meňzeş funksiýany köpeltmegiň ýerine).
- Prosessual çemeleşmeden has aňsat programma giňelmesi.
- OOP çemeleşmesi durmuşa geçiriş jikme-jikliklerinden abstrakt etmäge mümkinçilik berýär.
17. OOP-da haýsy kemçilikleriň bardygyny bize aýdyň
Gynansagam, olar hem bar:- OOP hiç zat ýazmazdan ozal özleşdirilmeli köp teoretiki bilimleri talap edýär.
- OOP ideýalaryna düşünmek we iş ýüzünde ulanmak beýle bir aňsat däl (ýüregiňizde birneme filosof bolmaly).
- OOP ulanylanda ulgamyň has çylşyrymly guramaçylygy sebäpli programma üpjünçiliginiň öndürijiligi birneme peselýär.
- OOP çemeleşmesi has köp ýady talap edýär, sebäbi hemme zat adaty üýtgeýänlerden has köp ýat tutýan synplardan, interfeýslerden, usullardan durýar.
- Başlangyç derňew üçin zerur wagt prosessualdan has köp.
18. Statik we dinamiki polimorfizm näme
Polimorfizm obýektlere şol bir synp ýa-da interfeýs üçin başgaça hereket etmäge mümkinçilik berýär. Polimorfizmiň iki görnüşi bar, olar ir we giç baglanyşdyryjy hem diýilýär . Statik polimorfizm ýa-da has irki baglanyşyk:- jemlenen wagtynda ýüze çykýar (programmanyň ömrüniň başynda);
- jemlenen wagtynda haýsy usuly ýerine ýetirmelidigini çözýär;
- Usuly artykmaç ýüklemek statiki polimorfizmiň mysalydyr;
- irki baglanyşyk hususy, statiki we terminal usullaryny öz içine alýar;
- miras irki baglanyşyk bilen baglanyşykly däl;
- Statik polimorfizm belli bir obýektleri öz içine almaýar, ýöne üýtgeýän adyň çep tarapynda görkezilen synp hakda maglumat.
- iş wagtynda ýüze çykýar (programma işleýän wagtynda);
- dinamiki polimorfizm usulyň iş döwründe haýsy anyk durmuşa geçiriljekdigini çözýär;
- usuly ýok etmek dinamiki polimorfizmiň mysalydyr;
- giç baglamak, belli bir obýektiň bellenilmegi, görnüşine salgylanma ýa-da superklass;
- miras dinamiki polimorfizm bilen baglanyşyklydyr.
GO TO FULL VERSION