JavaRush /Java блогу /Random-KY /32-деңгээл. Деңгээлдеги тема боюнча интервью суроолоруна ...
DefNeo
Деңгээл

32-деңгээл. Деңгээлдеги тема боюнча интервью суроолоруна жооптор

Группада жарыяланган
32-деңгээл. Деңгээлдин темасы боюнча интервью суроолоруна жооптор - 1
  1. Эмне үчүн керек RandomAccessFile?

    RandomAccessFileJava IO API топтомундагы класс, ал файлды каалагандай багыттоого, окууга же жазууга мүмкүндүк берет. Сиз ошондой эле файлдын учурдагы бөлүктөрүн алмаштыра аласыз; биз файлдын мазмунун жаңыртуу жөнүндө, тагыраак айтканда, файлдын фрагментин жаңылоо жөнүндө болуп жатабыз. FileInputStreamМуну же менен жасоо мүмкүн эмес FileOutputStream, бирок RandomAccessFileсизге бул жөндөмдү берет.

    Шилтеме: RandomAccessFile жана анын мүмкүнчүлүктөрү

  2. Эгер ал окуган файл RandomAccessFileжок болсо эмне болот?

    WillFileNotFoundException

  3. Ал жазган файл RandomAccessFileжок болсо эмне болот?

    Ал жаңысын түзүп, ага жазат.

  4. Эмне үчүн бизге класс керек StringReader?

    Java.io.StringReader классы булагы сап болгон символдордун агымы.

    Булагы сап деп аталган символдордун агымын билдирет

  5. Эмне үчүн бизге класс керек StringWriter?

    public class StringWriter
    extends Writer

    Чыгарылганын сап буферине чогултуучу символдук агым, андан кийин сапты куруу үчүн колдонулушу мүмкүн.

    StringWriterди жабуунун эч кандай таасири жок. Бул класстагы ыкмаларды IOException жаратпастан агым жабылгандан кийин чакырса болот.

    Өзүнүн агымын саптардын буферине чогулткан символдордун агымы, андан кийин сапты түзүү үчүн колдонулушу мүмкүн.

  6. Эмне үчүн бизге класс керек ByteArrayStream?

    Ошентип, ByteArrayInputStreamжана ByteArrayOutputStream.

    Бул класстар негизинен окшош StringReaderжана < code="">. StringReaderАл саптан (String) символдорду (char) гана окуйт, бирок ByteArrayInputStreambyte массивинен (ByteArray) byteтарды окуйт. <>

    StringWriterсапка символдорду (char) жазган, бирок ByteArrayOutputStreamанын ичиндеги byte массивине byteтарды жазат. Ага жазганда StringWriterанын ичиндеги сап узартылган, ал эми ByteArrayOutputStreamанын ички массивине жазганда byte да динамикалык түрдө кеңейген.

  7. Эмне үчүн бизге класс керек PrintStream? Колдонулган жерлерди атагыла?

    Класс PrintStreamмаалыматты окууга ыңгайлуу кылып көрсөтүү үчүн ойлоп табылган. Ал дээрлик толугу менен ыкмалардан printжана println.

  8. Эмне үчүн керек DynamicProxy?

    Javaда атайын класс (java.lang.reflect.Proxy) бар, анын жардамы менен an objectти иштөө убагында (динамикалык түрдө) ал үчүн өзүнчө класс түзбөстөн түзө аласыз.

  9. RMI кантип иштейт?

    RMI Remote Method Invokation дегенди билдирет. Же башкача айтканда, RMI бул бир Java машинасындагы an objectке башка Java машинасындагы an objectтин ыкмаларын чакырууга мүмкүндүк берүүчү механизм, ал тургай, алар ар кайсы компьютерлерде, ар кайсы өлкөлөрдө, жер шарынын ар кайсы бурчтарында жайгашкан.

    Традиционный подход к выполнению codeа на других машинах, разнесенных по сети может смутить из-за своей нудной и склонной к ошибкам реализации. Лучший способ рассмотреть эту проблему состоит в предположении, что некоторые an objectы располагаются на другой машине, и что вы можете посылать messages этим удаленным an objectм и получать результат, How будто они располагаются на вашей локальной машине. Это упрощение в точности является тем, что позволяет делать Удаленный Вызов Методов (RMI) в Java.

    Вот статья по созданию собственной реализации RMI: Удаленный вызов методов (RMI)

  10. Объекты Howих типов можно передавать по RMI?

    Объекты должны имплементировать интерфейс Serializable

    Remote method Invocation — механизм, который позволяет вызывать метод удалённого an object. Согласно ему, все операции по подготовке и передаче данных инкапсулируются в вызываемом методе клиентского an object-заглушки (stub). Сам же вызов метода ничем не отличается от вызова метода обычного локального an object, за небольшим исключением:

    • локальные an objectы передаются по значению (копии);
    • при передаче удалённого (Remote) an object, если он экспортирован, передаётся stub этого an object;
    • передаваемые an objectы должны быть Serializable;
    • кроме всех прочих исключительных ситуаций, при вызове удалённого метода может возбуждаться исключение RemoteException (ошибки маршализации/демаршализации, передачи данных и другие возможные ошибки протокола);

    Так же нужно отметить, что при вызове метода мы работаем с удалённым интерфейсом, а не с удалённым классом.

Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION