Rabu, April 03, 2019

Cara Bertukar Objek Pada Java

Bagaimana cara bertukar objek pada Java?
Asumsikan sebuah class dipanggil pada program dengan nama "Car" beserta atribut isinya. Kemudian diciptakan dua objek dari Car, yaitu car1 dan car2, bagaimanakah cara bertukar data dari car1 dan car2?

Cara sederhana untuk menukar anggota class
Contoh; jika class hanya memiliki satu integer atribut dengan nama "no" (nomor polisi), nilai tersebut bisa ditukar sama seperti halnya menukar nilai anggota dari dua objek Car.

Output:
c1.no = 2
c2.no = 1

Bagaimana jika nilai anggota dari Car tidak diketahui?
Solusi sebelumnya dapat dijalankan jika hanya terdapat satu anggota "no" pada class Car. Namun, bagaimana jika tidak diketahui nilai anggota dari Car atau list anggota nilainya terlalu besar. Hal ini adalah situasi umum dimana class menggunakan beberapa class lain tidak dapat mengakses anggota class. Berikut solusi yang dapat digunakan;

Output:
no = 1, model = 101
no = 2, model = 202

Dari hasil ouput program sebelumnya, nilai objek tidak mengalami pertukaran. Telah dibahas pada materi sebelumnya, bahwa parameter hanya dilewati oleh nilai pada Java. Jadi, ketika c1 dan c2 ditukar (swap()), maka fungsi swap() akan menciptakan duplikasi dari referensi.

Solusi dari permasalahan ini adalah menggunakan wrapper class (class pembungkus). Jika diciptakan wrapper class yang mengandung nilai refernsi dari Car, maka dapat dilakukan pertukaran nilai car dengan cara swapping referensi dari wrapper class.



Output:
no = 2, model = 202
no = 1, model = 101

Penggunaan wrapper class dapat bekerja sebagai solusi bahkan jika user class tidak memiliki akses terhadap anggota dari class dimana objeknya akan ditukar.





Tidak ada komentar:

Posting Komentar

Respon komentar 7 x 24 jam, so please be patient :D

Footer Adsense