Java Serialization Nedir? Ne İşe Yarar?

Okuma süresi ~1 dakika

Merhaba arkadaşlar. Bu yazımda Java Serialization (Serileştirme) konusuna değineceğim.

Bir klişe olacak ama Java bilindiği üzerine nesneye yönelik bir dil. Primitive tipler (int, char, boolean … gibi) hariç neredeyse herşey nesne ve bu nesneleri sürekli ve sürekli kullanırız. Ancak nesneleri bazen JVM dışında kullanmak gerekebiliyor. Fakat dışarıda kullandığımız bir nesnemizi tekrar içeride kullanmak istediğimizde nesne içinde kullanılan değerlerin hangi tipte olduğunu öğrenemiyoruz. Yani herhangi bir sınıftan bir nesne üretip, bunu bir dosyaya yazdırıp onu tekrar dosyadan okuduğumuzda değerlerin tip bilgisini bilememe problemimiz var. İşte tam bu durumda Java Serialization API yardımımıza koşuyor.

Bu durumu basit bir örnekle anlatarak durumun daha iyi pekişeceğine inanıyorum.

Araba bilgilerini tutan Car diye bir sınıfımız olsun ve bu bilgileri bir dosyaya kaydedip, tekrar okuma işlemi yapalım.

Serileştirme işlemi için Serializable arayüzünü implement etmek gerekiyor.

Araba sınıfımız

Nesnemizi dosyaya yazdırdığımız test sınıfımız

Nesnemizi dosyaya yazdığımız zaman dosyamızın çıktısı şu şekilde.

¨ÌsrCarÇ«5xÕçLbrandtLjava/lang/String;Lmodelq~xptSeattLeon

Şimdi gelin bu nesneyi dosyadan tekrar okuyalım.

Çıktımız :

Marka : Seat Model : Leon

 

Görüldüğü gibi dosyaya yazdırdığımız nesneyi tekrar okuyup, başarılı bir şekilde konsolumuza yazdırabildik.

Lütfen yorumlarınızı esirgemeyiniz. Bir dahaki yazımda görüşmek üzere, hoşçakalın.

RPC ve RMI nedir?

RPC yani Remote Procedure Call Uzaktan Yordam Çağrısı anlamına gelmektedir. RMI, Java yordamlarının lokalde veya uzaktaki başka bir Java ortamında çağırılmasına olanak tanır. Okumaya devam et

Java - Checked ve Unchecked Exception

13/02/2020 tarihinde yayımlandı.

Pair Programming (Eşli Programlama) Nedir?

19/10/2019 tarihinde yayımlandı.