Java дээр объектыг хэрхэн цуврал болгох вэ: 8 алхам (зурагтай)

Агуулгын хүснэгт:

Java дээр объектыг хэрхэн цуврал болгох вэ: 8 алхам (зурагтай)
Java дээр объектыг хэрхэн цуврал болгох вэ: 8 алхам (зурагтай)

Видео: Java дээр объектыг хэрхэн цуврал болгох вэ: 8 алхам (зурагтай)

Видео: Java дээр объектыг хэрхэн цуврал болгох вэ: 8 алхам (зурагтай)
Видео: "Inkscape програмын үндэс" курс хичээлээс 2024, May
Anonim

Java дээр объектыг цуврал болгохдоо та өгөгдлийг байтын урсгал болгон хөрвүүлж, дараа нь анхны өгөгдлийн хуулбар руу буцааж хөрвүүлдэг. Хэрэв энэ нь ойлгомжгүй сонсогдож байвал дараах нэр томъёогоор цуврал болгох талаар бодоорой. Та баримт бичиг дээр ажиллаж байгаа бөгөөд үүнийг хатуу диск дээрээ хадгална. Та ярианыхаа дагуу өгөгдлийг цуврал болгож байгаа тул дараа нь энэ хуулбарыг авах боломжтой болно. Цуваачлал нь сүлжээнд өгөгдөл дамжуулах ажлыг илүү хялбар, үр дүнтэй болгодог.

Объектийг цуврал болгохын өмнө Java -ийн үндсийг ойлгох нь чухал юм. Хэрэв та Паскаль болон С -ийн хуучин хувилбарууд гэх мэт програмчлалын хэлийг ашиглаж байсан бол объектын цуваажилт хийхгүйгээр програмист өгөгдлийг хадгалах, ачаалахын тулд тусдаа I/O текст файл үүсгэх ёстой гэдгийг мэдэх болно. Java дахь объектын цуваажилт нь өгөгдлийг хадгалах, цаг хугацаа, програмчлалын зардлыг хэмнэх зорилгоор энэхүү текст файлыг үүсгэхгүй. Дараах нийтлэлд Java дээрх объектыг цуврал болгох алхамуудыг оруулсан болно. Энэ нийтлэл дэх дээжийн кодыг Java хөгжүүлэгчдийн Almanac 1.4 -ийн зөвшөөрлөөр ашигласан болно.

Алхам

Java дээр объектыг цуврал болгох 1 -р алхам
Java дээр объектыг цуврал болгох 1 -р алхам

Алхам 1. Цуваа болгох шаардлагатай Java кодлох объектыг нээх эсвэл эхнээс нь үүсгэх

Java дээр объектыг цуврал болгох 2 -р алхам
Java дээр объектыг цуврал болгох 2 -р алхам

Алхам 2. Java дээр цуврал болгохыг хүсч буй объектыг сонгоно уу

Энэ жишээнд бид энэ объектыг "MyObject" гэж нэрлэх болно.

Java дээр объектыг цуврал болгох 3 -р алхам
Java дээр объектыг цуврал болгох 3 -р алхам

Алхам 3. MyObject классыг java.io. Serialize интерфейсийг хэрэгжүүлэх замаар Java -д объектын цувралжуулалтыг идэвхжүүлнэ үү

Дараах кодын мөрийг кодын эхэнд нэмж "нийтийн анги MyObject" line.public анги MyObject нь java.io -ийг хэрэгжүүлдэг. Serializable

Java дээр объектыг цуврал болгох 4 -р алхам
Java дээр объектыг цуврал болгох 4 -р алхам

Алхам 4. Одоо таны объектыг цуврал болгох боломжтой бөгөөд үүнийг дараах байдлаар гаралтын урсгалаар бичиж болно гэсэн үг юм

  • Дараах кодын мөрөнд MyObject (эсвэл сериалжиж болох аливаа объектыг) файл эсвэл диск рүү хэрхэн бичихийг харуулав.

    оролдох {

    // Өгөгдлийн объектыг файлд цуврал болгох

    ObjectOutputStream out = шинэ ObjectOutputStream (шинэ FileOutputStream ("MyObject.ser")));

    out.writeObject (объект);

    out.close ();

    // Өгөгдлийн объектыг байтын массивт цуврал болгох

    ByteArrayOutputStream bos = шинэ ByteArrayOutputStream ();

    out = new ObjectOutputStream (bos);

    out.writeObject (объект);

    out.close ();

    // Цуваа болсон объектын байтыг авах

    байт buf = bos.toByteArray ();

    } барих (IOException e) {

    }

Java дээр объектыг цуврал болгох 5 -р алхам
Java дээр объектыг цуврал болгох 5 -р алхам

Алхам 5. Үүнийг дараах байдлаар уншиж болно

{FileInputStream door = new FileInputStream ("name_of_file.sav") -ийг туршиж үзээрэй; ObjectInputStream уншигч = шинэ ObjectInputStream (хаалга); MyObject x = шинэ MyObject (); x = (MyObject) уншигч.nextObject ();} барих (IOException e) {e.printStackTrace ();}

Java дээр объектыг цуврал болгох 6 -р алхам
Java дээр объектыг цуврал болгох 6 -р алхам
Java дээр объектыг цуврал болгох 7 -р алхам
Java дээр объектыг цуврал болгох 7 -р алхам

Алхам 6. Үр дүнтэй ажиллаж байгаа эсэхийг шалгахын тулд Java програм доторх цуврал объектын кодыг ажиллуулаарай (заавал биш)

Jar Java файлыг ажиллуул. Алхам 9
Jar Java файлыг ажиллуул. Алхам 9

Алхам 7. Java дээр сериалжсан объектыг хадгалж хаах

Зөвлөмж

  • Java SE Development Kit 6-ийн сериалжуулалтыг сайжруулснаар та ObjectStreamClass-ийг ашиглан сериалжуулагдахгүй ангийн объектуудыг удирдах ямар ч аргыг хайж олох боломжтой болно.
  • Том объектын модны унших, бичих хугацааг сайжруулахын тулд цуврал болгох шаардлагагүй хувьсагчдыг "түр зуурын" түлхүүр үгээр ашиглана уу. Энэ нь цуврал болгох явцад шаардлагагүй өгөгдлийг унших, бичихээ больсонтой холбоотойгоор гүйцэтгэлийг нэмэгдүүлэх болно.

Анхааруулга

  • Java нь хөгжүүлэгчдийн иж бүрдэл хэрэгслийн шинэ хувилбарыг бараг жил бүр гаргадаг. Шинэ хувилбарууд нь обьектыг Java дээр хэрхэн цуврал болгох талаар хийсэн шинэчлэлтүүд, өөрчлөлтүүд орно. Тиймээс ашиглаж буй хувилбарынхаа өөрчлөлтийг хянах нь чухал юм.
  • Объектуудыг цуврал болгохдоо та өгөгдлийн урсгалыг шифрлэж чадахгүй. Тиймээс шаардлагатай бол өгөгдлийг хамгаалахын тулд та бусад програмууд эсвэл хоёрдогч сүлжээний тээвэрлэлтийн процесст найдах хэрэгтэй болно.
  • Санамсаргүй хандалтын файлд обьект бичих боломжийг танд олгох одоогоор байхгүй байна. Үүний оронд та байт массивын оролтын гаралтын урсгалыг объектуудыг уншиж, бичих боломжтой газар болгон ашиглаж болно. Гэсэн хэдий ч объект бүхэлдээ байтын массив урсгалд байгаа эсэхийг шалгаарай, эс тэгвээс процесс амжилтгүй болно.

Зөвлөмж болгож буй: