JavaRush /Блоги Java /Random-TG /Сатҳи 23. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ
zor07
Сатҳи
Санкт-Петербург

Сатҳи 23. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ

Дар гурӯҳ нашр шудааст
Сатҳи 23. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ - 1
  1. Синфҳои дохилӣ кадомҳоянд?

    • Синфҳои дохилӣ ба ду намуд тақсим мешаванд: статикӣ ва ғайристатикӣ.
    • Синфҳои лонае, ки ҳамчун статикӣ эълон шудаанд, синфҳои лонаҳои статикӣ номида мешаванд.
    • Синфҳои ғайристатикӣ ҷойгиршуда синфҳои дохилӣ номида мешаванд.
  2. Синфи дохorи номаълум барои чӣ тартиб медиҳад?

    Ба синфи дарунӣ ғайри статикӣ

  3. Чаро finalҳангоми сохтани синфҳои беном калимаи калидиро истифода бурдан лозим аст?

    Агар синфи дохorи беном муайян карда шуда бошад ва он бояд an objectҳои берун аз ин синфи дохилӣ муайяншударо истифода барад, компилятор талаб мекунад, ки истинодҳои ба онҳо додашуда тағирнашаванда (ниҳоӣ) эълон карда шаванд. Бе чунин эъломия, шумо ҳангоми тартиб додани барнома хатогӣ хоҳед гирифт.

  4. Объекти синфи дохorро чӣ гуна бояд дуруст сохт?

    Синфҳои дохилӣ (ғайристатикӣ), ба монанди тағирёбандаҳо ва усулҳо, бо an objectи синфи берунӣ алоқаманданд. Синфҳои дохилӣ инчунин ба майдонҳои синфи берунӣ дастрасии мустақим доранд. Чунин синфҳо наметавонанд усулҳо ва майдонҳои статикиро дар бар гиранд. Синфҳои дохилӣ наметавонанд бидуни мисоли берунӣ вуҷуд дошта бошанд. Барои сохтани an object:

    Outer outer = new Outer();
    Innter inner = outer.new Inner();
  5. Объекти синфи лонаро чӣ тавр дуруст сохтан мумкин аст?

    Синтаксис барои сохтани an objectи синфи лона ин аст:

    OuterClass.StaticNestedClass nestedObject = new OuterClass.StaticNestedClass();
  6. Оё имконпазир аст, ки усулҳои статикӣ/тағйирёбандаҳоро дар синфи дохилӣ эҷод кунем?

    Усулҳо/тағйирёбандаҳои статикиро дар синфи дохилӣ эълон кардан мумкин нест (на синфи лона).

    Синфҳои дохилӣ (ғайристатикӣ), ба монанди тағирёбандаҳо ва усулҳо, бо an objectи синфи берунӣ алоқаманданд. Чунин синфҳо наметавонанд усулҳо ва майдонҳои статикиро дар бар гиранд.

  7. Ягон се синфи дохorро номбар кунед?

    1. private static class Holder-синфи лона HashMapаз java.util.
    2. Интерфейс Mapдорои он аст interface Entry<K,V>, ки боз HashMapдар синфи дигар ҷойгир аст ва амалӣ карда мешавад static class Entry<K,V> implements Map.Entry<K,V>.
    3. private static class IntegerCacheдар синф Integer.
  8. Чӣ тавр синфҳои дохилӣ мушкилоти мероси сершуморро дар Java ҳал мекунанд?

    Зеро Дар Java мероси чандкаратаи классҳо манъ аст, ин масъала бо ёрии синфҳои дохилӣ ҳал карда мешавад: дар синфе, ки ба мо лозим аст, мо синфи дохorро эълон мекунем ва онро аз синфи зарурӣ мерос мегирем. Мисол:

    class Tiger extends Cat
    {
    
     public void tigerRun()
     {
      .....
     }
    
    public void startTiger()
     {
      TigerThread thread = new TigerThread();
      thread.start();
     }
    
     class TigerThread extends Thread
     {
      public void run()
      {
       tigerRun();
      }
     }
    }
  9. Фарқи байни синфҳои беном дар асоси интерфейс ва ба синф асосёфта чӣ гуна аст?

    Синфи беном мувофиқи JLS 15.9.5 ифодаест, ки дар он эъломияи синфи нав ва оғозкунии он якҷоя карда мешавад:

    • При объявлении класса будет создан новый класс, производный от указанного класса при использовании в качестве базы другого класса, or реализующий интерфейс при использовании в качестве базы интерфейса.
    • При инициализации будет создан новый an object и на него будет возвращения link: анонимный класс является конкретным.

    Таким образом, единственное отличие в анонимных классах, созданных на основе интерфейса и класса, заключается в количестве абстракных методов, которые необходимо реализовать.

    Инициализации анонимного класса на основе интерфейса потребует реализации каждого метода, в то время How при инициализации анонимного класса на основе абстрактного/конкретного класса позволит изменить поведение за счет перегрузки методов и потребует реализации абстракных методов.

  10. Можно ли создать анонимный статический вложенный класс?

    Нет, статической становится только переменная, но не класс.

Шарҳҳо
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION