JavaRush /جاوا بلاگ /Random-SD /ليول 21. ليول جي موضوع تي انٽرويو سوالن جا جواب
zor07
سطح
Санкт-Петербург

ليول 21. ليول جي موضوع تي انٽرويو سوالن جا جواب

گروپ ۾ شايع ٿيل
ليول 21. ليول جي موضوع تي انٽرويو سوالن جا جواب - 1
  1. ڪلاس جا طريقا لسٽ ڪريوObject

    • equals()
    • hashCode()
    • toString()
    • getClass()
    • notify()
    • notifyAll()
    • wait()
    • wait(long timeOut)
    • wait(long timeOut, int nanos)
  2. equalsڇو ۽ طريقن جي ضرورت آهي hashCode؟

    شين جي ڀيٽ ڪرڻ لاء استعمال ڪيو ويو.

    طريقي جو مقصد equalsاهو طئي ڪرڻ آهي ته ڇا شيون اندروني طور تي هڪجهڙائي آهن شين جي اندروني مواد جي مقابلي سان. اهو equalsسست رفتاري سان ڪم ڪندو آهي، پهرين شين جي هيش ڪوڊس جو مقابلو ڪيو ويندو آهي، ۽ جيڪڏهن هيش ڪوڊ برابر هوندا آهن، هڪ چيڪ ڪيو ويندو آهي خلافequals

  3. ڇا ٿيندو جيڪڏهن توهان برابر کي اوور رائڊ ڪيو پر اوور رائڊ نه ڪيو hashCode؟

    شروعات ۾ hashCode، هڪ بي ترتيب نمبر.

    equalsجاوا ۾ مجموعا هميشه ڳولهيندا آهن / انهن جو مقابلو ڪرڻ کان پهريان طريقي سان استعمال ڪندي شيون استعمال ڪندي hashCode(). ۽ جيڪڏهن هڪجهڙا شيون مختلف آهن hashCode، ته پوءِ شيون مختلف سمجهي وينديون - اهو آسان نه ٿيندو ته انهن کي استعمال ڪرڻ سان مقابلو ڪرڻ equals.

  4. طريقا ڇو آهن wait،،، notify؟notifyAll

    ڪڏهن ڪڏهن ڪنهن پروگرام ۾ اهڙي صورتحال ٿي سگهي ٿي جتي ڪو ٿريڊ ڪوڊ جي بلاڪ ۾ داخل ٿيو هجي synchronized، مانيٽر کي بلاڪ ڪيو هجي ۽ اڳتي ڪم نه ڪري سگهي، ڇاڪاڻ ته ڪجھ ڊيٽا اڃا تائين غائب آهي: مثال طور، فائل جيڪا ان کي پروسيس ڪرڻ گهرجي، اڃا تائين لوڊ نه ڪئي وئي آهي يا انهي وانگر. هن مسئلي کي حل ڪرڻ لاء هڪ طريقو ايجاد ڪيو ويو wait(). هن طريقي کي ڪال ڪرڻ سان ٿريڊ مانيٽر کي ڇڏڻ ۽ "روڪ" ڪرڻ جو سبب بڻائيندو آهي.

    بند ڪرڻ لاء، طريقا استعمال ڪيا ويا آهن notify. notifyAllطريقو notifyهڪ بي ترتيب واري سلسلي کي ”غير منجهيل“ ڪري ٿو، طريقو notifyAll- ڏنل مانيٽر جا سڀ ”منجمد“ سلسلا.

  5. ڪنهن شئي کي صحيح طريقي سان ڪلون ڪيئن ڪجي؟

    ڪلوننگ جا ٻه قسم.

    ڊفالٽ اعتراض کي کلون ڪرڻ لاء:

    • Cloneableپنھنجي ڪلاس ۾ ھڪڙو انٽرفيس شامل ڪريو
    • طريقي کي ختم ڪريو clone۽ ان ۾ بنيادي عمل کي ڪال ڪريو:
    class Point implements Cloneable
    {
     int x;
     int y;
    
     public Object clone()
     {
      return super.clone();
     }
    }

    يا توھان لکي سگھوٿا ھن طريقي جي عمل کي cloneپنھنجو پاڻ:

    class Point
    {
     int x;
     int y;
    
     public Object clone()
     {
      Point point = new Point();
      point.x = this.x;
      point.y = this.y;
      return point;
     }
    }
  6. اهو طريقو ڇو ضروري آهي finalize()۽ اهو ڪيئن ڪم ڪري ٿو؟

    جيڪڏھن توھان کي ياد آھي، اھو finalize()ھڪڙو خاص طريقو آھي جنھن کي ھڪڙي اعتراض تي سڏيو ويندو آھي ان کان اڳ جو ڪچرو جمع ڪندڙ ان کي ناس ڪري.

    هن طريقي جو بنيادي مقصد استعمال ٿيل خارجي غير جاوا وسيلن کي ڇڏڻ آهي: فائلون بند ڪريو، I/O اسٽريم، وغيره.

    finalize()غير مستحڪم ڪم ڪري ٿو.

    اهو طريقو ان تي رکيل اميدن تي پورو نٿو لهي. جاوا مشين ڪنهن شئي جي تباهي کي دير ڪري سگهي ٿي، انهي سان گڏ هڪ طريقي جي ڪال، finalizeجيستائين اهو پسند ڪري ٿو. ان کان سواء، ان جي ضمانت نه آهي ته هن طريقو سڀ سڏيو ويندو. ڪيترين ئي حالتن ۾، "اصلاح" جي خاطر، اهو نه سڏيو ويندو آهي.

  7. ڇا فرق آهي final،، finally؟finalize

    • final- تبديل ڪندڙ
    • فيلڊ تبديل نه ٿي ڪري سگھجي، طريقا ختم ٿي ويا آھن
    • ڪلاس ورثي ۾ نه ٿا ملن
    • هي ترميمي صرف طبقن، طريقن ۽ متغيرن تي لاڳو ٿئي ٿو (مقامي متغير پڻ)
    • طريقن جي دليلن کي نشان لڳايو ويو آهي جيئن finalصرف پڙهڻ لاءِ؛ انهن کي تبديل ڪرڻ جي ڪوشش جي نتيجي ۾ هڪ تاليف جي غلطي ٿيندي.
    • Переменные 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.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION