JavaRush /จาวาบล็อก /Random-TH /ระดับ 32 คำตอบสำหรับคำถามสัมภาษณ์ในหัวข้อระดับ
DefNeo
ระดับ

ระดับ 32 คำตอบสำหรับคำถามสัมภาษณ์ในหัวข้อระดับ

เผยแพร่ในกลุ่ม
ระดับ 32 คำตอบสำหรับคำถามสัมภาษณ์ในหัวข้อระดับ - 1
  1. ทำไมมันถึงจำเป็นRandomAccessFile?

    RandomAccessFileเป็นคลาสในแพ็กเกจ Java IO API ซึ่งช่วยให้คุณสามารถนำทาง อ่าน หรือเขียนลงในไฟล์ได้ตามที่คุณต้องการ คุณยังสามารถแทนที่ส่วนที่มีอยู่ของไฟล์ได้ เรากำลังพูดถึงการอัปเดตเนื้อหาของไฟล์ หรือเจาะจงมากขึ้นเกี่ยวกับการอัปเดตส่วนของไฟล์ สิ่งนี้ไม่สามารถทำได้ด้วยFileInputStreamหรือFileOutputStreamแต่RandomAccessFileจะทำให้คุณมีความสามารถนี้

    ลิงก์: RandomAccessFile และความสามารถของมัน

  2. จะเกิดอะไรขึ้นถ้าไฟล์ที่ใช้อ่านRandomAccessFileไม่มีอยู่?

    จะFileNotFoundException

  3. RandomAccessFileจะเกิดอะไรขึ้นหาก ไม่มีไฟล์ที่เขียน อยู่?

    มันจะสร้างอันใหม่และเขียนลงไป

  4. ทำไมเราถึงต้องการชั้นเรียนStringReader?

    คลาส Java.io.StringReader เป็นสตรีมอักขระที่มีแหล่งที่มาเป็นสตริง

    แสดงถึงกระแสของอักขระที่มีแหล่งที่มาเรียกว่าสตริง

  5. ทำไมเราถึงต้องการชั้นเรียนStringWriter?

    public class StringWriter
    extends Writer

    สตรีมอักขระที่รวบรวมเอาต์พุตในบัฟเฟอร์สตริง ซึ่งจากนั้นสามารถนำมาใช้เพื่อสร้างสตริงได้

    การปิด StringWriter ไม่มีผลกระทบ วิธีการในคลาสนี้สามารถเรียกได้หลังจากที่กระแสข้อมูลถูกปิดโดยไม่ต้องสร้าง IOException

    กระแสของอักขระที่รวบรวมกระแสข้อมูลลงในบัฟเฟอร์ของสตริง ซึ่งสามารถนำมาใช้เพื่อสร้างสตริงได้

  6. ทำไมเราถึงต้องการชั้นเรียนByteArrayStream?

    ดังนั้นByteArrayInputStreamและByteArrayOutputStream.

    คลาสเหล่านี้โดยพื้นฐานแล้วจะคล้ายกับStringReaderและ < code="">. อ่าน เฉพาะ StringReaderอักขระ (อักขระ) จากสตริง (String) แต่ ByteArrayInputStreamอ่านไบต์จากอาร์เรย์ไบต์ (ByteArray) <>

    StringWriterเขียนอักขระ (อักขระ) ลงในสตริง แต่ByteArrayOutputStreamเขียนไบต์ลงในอาร์เรย์ไบต์ที่อยู่ภายใน เมื่อเขียนลงไปStringWriterสตริงข้างในจะยาวขึ้น และเมื่อเขียนไปยังByteArrayOutputStreamอาร์เรย์ภายใน ไบต์ก็จะขยายแบบไดนามิกเช่นกัน

  7. ทำไมเราถึงต้องการชั้นเรียนPrintStream? ตั้งชื่อสถานที่ที่ใช้?

    ชั้นเรียนPrintStreamถูกประดิษฐ์ขึ้นเพื่อแสดงข้อมูลในลักษณะที่อ่านง่าย เกือบทั้งหมดประกอบด้วยวิธีการprintและprintln.

  8. ทำไมมันถึงจำเป็นDynamicProxy?

    Java มีคลาสพิเศษ (java.lang.reflect.Proxy) ซึ่งคุณสามารถสร้างวัตถุในขณะรันไทม์ (แบบไดนามิก) ได้โดยไม่ต้องสร้างคลาสแยกต่างหากสำหรับมัน

  9. RMI ทำงานอย่างไร?

    RMI ย่อมาจาก Remote Method Invokation หรืออีกนัยหนึ่ง RMI เป็นกลไกที่อนุญาตให้อ็อบเจ็กต์ในเครื่อง Java เครื่องหนึ่งสามารถเรียกเมธอดของอ็อบเจ็กต์ในเครื่อง Java อื่นได้ แม้ว่าวิธีการเหล่านั้นจะอยู่บนคอมพิวเตอร์คนละเครื่อง ในประเทศต่าง ๆ และอยู่คนละซีกโลกก็ตาม

    Традиционный подход к выполнению 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