JavaRush /Blog Jawa /Random-JV /Tingkat 21. Wangsulan pitakonan wawancara babagan topik t...
zor07
tingkat
Санкт-Петербург

Tingkat 21. Wangsulan pitakonan wawancara babagan topik tingkat

Diterbitake ing grup
Level 21. Wangsulan pitakonan wawancara babagan topik level - 1
  1. Daftar metode kelasObject

    • equals()
    • hashCode()
    • toString()
    • getClass()
    • notify()
    • notifyAll()
    • wait()
    • wait(long timeOut)
    • wait(long timeOut, int nanos)
  2. equalsKenapa & metode dibutuhake hashCode?

    Digunakake kanggo mbandhingake obyek.

    Tujuan metode kasebut equalsyaiku kanggo nemtokake manawa obyek kasebut identik kanthi mbandhingake isi internal obyek kasebut. Iki equalskerjane alon-alon, pisanan kode hash obyek dibandhingake, lan yen kode hash padha, mriksa bakal ditindakake.equals

  3. Apa sing kedadeyan yen sampeyan ngganti sing padha nanging ora ngilangi hashCode?

    Kaping pisanan hashCode, nomer acak.

    equalsKoleksi ing Jawa tansah goleki/bandhingake nggunakake metode sadurunge mbandhingake obyek nggunakake hashCode(). Lan yen obyek sing padha beda-beda hashCode, mula obyek kasebut bakal dianggep beda - mung ora bisa mbandhingake nggunakake equals.

  4. Kok cara- carane wait,, notify?notifyAll

    Kadhangkala ing program bisa uga ana kahanan ing ngendi thread wis mlebu blok kode synchronized, diblokir monitor lan ora bisa mlaku maneh, amarga sawetara data isih ilang: contone, file sing kudu diproses durung dimuat utawa kaya. Sawijining cara diciptakake kanggo ngatasi masalah iki wait(). Nelpon cara iki nyebabake thread ngeculake monitor lan "ngaso".

    Kanggo unpause, cara digunakake notify. notifyAllCara notify"unfreezes" siji thread acak, cara notifyAll- kabeh "beku" Utas monitor tartamtu.

  5. Kepiye cara kloning obyek kanthi bener?

    Rong jinis kloning.

    Kanggo kloning obyek standar:

    • Tambah antarmuka Cloneablemenyang kelas sampeyan
    • Override cara clonelan nelpon implementasine dhasar ing:
    class Point implements Cloneable
    {
     int x;
     int y;
    
     public Object clone()
     {
      return super.clone();
     }
    }

    Utawa sampeyan bisa nulis implementasine metode kasebut clonedhewe:

    class Point
    {
     int x;
     int y;
    
     public Object clone()
     {
      Point point = new Point();
      point.x = this.x;
      point.y = this.y;
      return point;
     }
    }
  6. Napa cara kasebut dibutuhake finalize()lan kepiye cara kerjane?

    Yen sampeyan ngelingi, iki finalize()minangka cara khusus sing diarani obyek sadurunge pengumpul sampah ngrusak.

    Tujuan utama metode iki yaiku ngeculake sumber daya eksternal non-Jawa: nutup file, stream I/O, lsp.

    finalize()dianggo ora stabil.

    Cara iki ora cocog karo sing dikarepake. Mesin Jawa bisa nundha karusakan saka obyek, uga nelpon saka cara, finalizekanggo anggere iku seneng. Kajaba iku, ora njamin yen metode iki bakal diarani kabeh. Ing akeh kahanan, kanggo "optimasi" ora diarani.

  7. Apa bedane final,, finally?finalize

    • final- modifier
    • Kolom ora bisa diganti, cara diganti
    • Kelas ora bisa diwarisake
    • Modifier iki mung ditrapake kanggo kelas, metode lan variabel (uga variabel lokal)
    • Argumen metode ditandhani minangka finalmung diwaca; nyoba ngganti bakal nyebabake kesalahan kompilasi.
    • Переменные final не инициализируются по умолчанию, им необходимо явно присвоить meaning при объявлении or в конструкторе, иначе – ошибка компиляции
    • Если final переменная содержит ссылку на an object, an object может быть изменен, но переменная всегда будет ссылаться на тот же самый an object
    • Также это справедливо и для массивов, потому что массивы являются an objectми, – массив может быть изменен, а переменная всегда будет ссылаться на тот же самый массив
    • Если класс объявлен final и abstract (взаимоисключающие понятия), произойдет ошибка компиляции
    • Так How final класс не может наследоваться, его методы никогда не могут быть переопределены

    finally — блок в связке try-catch-finally, code в котором выполнится независимо от того вылетело ли исключение в блоке try or нет. Используется для освобождения ресурсов.

    finalize — метод в классе Object см 6.

  8. What такое try-with-resources?

    Это специальная конструкция try, называемая try-with-resources, в которой Обрати внимание – после try следуют круглые скобки, где объявляются переменные и создаются an objectы. Эти an objectы можно использовать внутри блока try, обозначенного скобками {}. Когда выполнение команд блока try закончится, независимо от того – нормально оно закончилось or было исключение, для an object, созданного внутри круглых скобок (), будет вызван метод close();

  9. Чем отличаются методы wait(1000) и sleep(1000)?

    sleep() приостанавливает поток на указанное. состояние меняется на TIMED_WAITING, по истечению — RUNNABLE

    wait() меняет состояние потока на WAITING

    может быть вызвано только у an object владеющего блокировкой, в противном случае выкинется исключение IllegalMonitorStateException. при срабатывании метода блокировка отпускается, что позволяет продолжить работу другим потокам ожидающим захватить ту же самую блокировку . в случае wait(int) с аргументом состояние будет TIMED_WAITING

  10. В чем отличие i++ и ++i?

    • ++i, i сначала увеличивается на 1, затем участвует в выражении.
    • i++, i сначала участвует в выражении, затем увеличивается на 1.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION