JavaRush /Java-Blog /Random-DE /Level 32. Antworten auf Interviewfragen zum Levelthema
DefNeo
Level 36

Level 32. Antworten auf Interviewfragen zum Levelthema

Veröffentlicht in der Gruppe Random-DE
Stufe 32. Antworten auf Interviewfragen zum Thema Stufe - 1
  1. Warum wird es benötigt RandomAccessFile?

    RandomAccessFileist eine Klasse im Java IO API-Paket, mit der Sie nach Belieben in einer Datei navigieren, aus ihr lesen oder in sie schreiben können. Sie können auch vorhandene Teile einer Datei ersetzen; wir sprechen von der Aktualisierung des Inhalts einer Datei, genauer gesagt von der Aktualisierung eines Fragments einer Datei. FileInputStreamDies ist mit oder nicht möglich FileOutputStream, aber RandomAccessFileSie erhalten diese Fähigkeit.

    Link: RandomAccessFile und seine Funktionen

  2. Was passiert, wenn die Datei, aus der gelesen wird, RandomAccessFilenicht existiert?

    WilleFileNotFoundException

  3. Was passiert, wenn die Datei, in die geschrieben wird, RandomAccessFilenicht existiert?

    Es wird ein neues erstellt und darauf geschrieben.

  4. Warum brauchen wir eine Klasse StringReader?

    Die Klasse Java.io.StringReader ist ein Zeichenstrom, dessen Quelle eine Zeichenfolge ist.

    Stellt einen Zeichenstrom dar, dessen Quelle als Zeichenfolge bezeichnet wird

  5. Warum brauchen wir eine Klasse StringWriter?

    public class StringWriter
    extends Writer

    Ein Zeichenstrom, der seine Ausgabe in einem Zeichenfolgenpuffer sammelt, der dann zum Erstellen einer Zeichenfolge verwendet werden kann.

    Das Schließen eines StringWriter hat keine Auswirkung. Die Methoden in dieser Klasse können aufgerufen werden, nachdem der Stream geschlossen wurde, ohne dass eine IOException generiert wird.

    Ein Zeichenstrom, der seinen Strom in einem Zeichenfolgenpuffer sammelt, der dann zum Erstellen einer Zeichenfolge verwendet werden kann.

  6. Warum brauchen wir eine Klasse ByteArrayStream?

    So ByteArrayInputStreamund ByteArrayOutputStream.

    Diese Klassen ähneln im Wesentlichen StringReaderund < code="">. Es liest nur StringReaderZeichen (char) aus einer Zeichenfolge (String), ByteArrayInputStreamliest jedoch Bytes aus einem Byte-Array (ByteArray). <>

    StringWriterhat Zeichen (char) in einen String geschrieben, ByteArrayOutputStreamschreibt aber Bytes in ein darin enthaltenes Byte-Array. Beim Schreiben StringWriterwurde die darin enthaltene Zeichenfolge verlängert, und beim Schreiben in ByteArrayOutputStreamdas interne Array wurde das Byte ebenfalls dynamisch erweitert.

  7. Warum brauchen wir eine Klasse PrintStream? Nennen Sie die Einsatzorte?

    Die Klasse PrintStreamwurde erfunden, um Informationen lesbar darzustellen. Es besteht fast ausschließlich aus Methoden printund println.

  8. Warum wird es benötigt DynamicProxy?

    Java verfügt über eine spezielle Klasse (java.lang.reflect.Proxy), mit der Sie tatsächlich ein Objekt zur Laufzeit (dynamisch) erstellen können, ohne eine separate Klasse dafür zu erstellen.

  9. Wie funktioniert RMI?

    RMI steht für Remote Method Invokation. Oder mit anderen Worten: RMI ist ein Mechanismus, der es einem Objekt in einer Java-Maschine ermöglicht, Methoden eines Objekts in einer anderen Java-Maschine aufzurufen, selbst wenn diese sich auf verschiedenen Computern, in verschiedenen Ländern oder auf verschiedenen Seiten der Welt befinden.

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

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

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

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

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

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

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

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION