Banner Java

Menggunakan Obyek Sebagai Elemen Larik (Array)

Di artikel Pengertian Dan Deklarasi Larik (Array) Di Java dan Menggunakan Notasi Pendek Larik (Array Initializer), Anda dapat mempelajari materi dasar tentang larik Java dan di artikel Menggunakan Kata Kunci (Keyword) this Di Java, Anda dapat mempelajari contoh definisi kelas Lingkaran. Artikel-artikel tersebut mempunyai keterkaitan dengan contoh program di artikel kali ini. Perlu dipahami kembali bahwa elemen sebuah larik bisa berasal dari tipe data primitif atau juga dari larik lain. Sebagaimana sebuah larik yang elemennya adalah dari tipe data primitif, larik obyek adalah larik yang elemennya merupakan variabel yang mengacu ke sebuah obyek Java (variabel semacam ini disebut juga dengan reference variables). Berikut ini adalah sintaksis untuk mendeklarasikan larik obyek:

   nama-kelas[] variable-acuan = new nama-kelas[jumlah-elemen];

contoh:

   Lingkaran[] larikLingkaran = new Lingkaran[5];

Larik yang elemennya dari tipe data primitif dapat diinisialisasi dengan meletakkan nilai elemen diantara tanda { dan } dan menggunakan tanda koma sebagai pemisah untuk setiap nilai elemen. Untuk larik yang elemennya merupakan acuan ke obyek dari kelas Lingkaran, Anda dapat menggunakan perulangan for untuk menginisialisasi larik kelas Lingkaran.

   for (int x = 0; x < larikLingkaran.length; x++) {
      larikLingkaran[x] = new Lingkaran(1 + (int) (Math.random() * 11));
   }

Pernyataan di atas menginisialisasi elemen larikLingkaran dengan membuat obyek Lingkaran menggunakan konstruktor kedua. Parameter konstruktor kedua, jari2, diberi nilai integer yang dihasilkan dari metoda random dengan rentang nilai 1 – 10. Karena tipe data dari parameter jari2 adalah double, nilai integer ini akan dikonversi secara otomatis ke tipe data double sebelum dijadikan sebagai argumen parameter jari2.

Berikut ini adalah contoh program kelas TestLingkaran yang mendemonstrasikan penggunaan obyek sebagai elemen larik. Program akan memanfaatkan kelas Lingkaran yang telah dikonstruki sebagai obyek elemen larik. Untuk mengkonstrusi obyek lingkaran, diperlukan metoda random yang menghasilkan nilai acak sebagai argumen dari parameter konstruktor kelas Lingkaran. Program akan menampilkan jari-jari, keliling, luas dan juga jumlah obyek kelas Lingkaran yang telah dibuat.

// Nama file : TestLingkaran.java
// Mendemonstrasikan penggunaan larik obyek

// Mengimpor kelas
import javax.swing.JTextArea;
import javax.swing.JOptionPane;
import java.text.DecimalFormat;
import bangun.datar.Lingkaran;

// Deklarasi kelas
public class TestLingkaran {

   // Metoda main
   public static void main(String[ ] args) {

      // Deklarasi variabel acuan ke obyek
      JTextArea areaTampilan;
      DecimalFormat duaAngka;
      Lingkaran[ ] larikLingkaran;
      String tampilan;

      // Membuat larik lingkaran
      larikLingkaran = new Lingkaran[7];

      for (int x = 0; x < larikLingkaran.length; x++) {
         larikLingkaran[x] = new Lingkaran(1 + (int) (Math.random() * 21));
      }

      // Memformat tampilan
      duaAngka = new DecimalFormat("0.00");
      tampilan = "Menggunakan Kelas Lingkaran.\n";
      tampilan += "Menampilkan jari-jari, keliling dan luas lingkaran.\n\n";
      tampilan += "Jari-jari\tKeliling\tLuas\n";
      
      for (int x = 0; x < larikLingkaran.length; x++) {
         tampilan += larikLingkaran[x].getJari2() + "\t" +
         duaAngka.format(larikLingkaran[x].hitungKeliling()) + "\t" +
         duaAngka.format(larikLingkaran[x].hitungLuas()) + "\n";
      }
                        
      // Menampilkan jumlah obyek lingkaran yang dibuat
      tampilan += "\nJumlah objek kelas Lingkaran yang dibuat : " + 
         larikLingkaran[1].getJumlahObjek();

      // Menampilkan hasil
      areaTampilan = new JTextArea();
      areaTampilan.setText(tampilan);
      JOptionPane.showMessageDialog(null, areaTampilan, "Kelas Lingkaran",
         JOptionPane.INFORMATION_MESSAGE);

      // Mengakhiri aplikasi GUI
      System.exit(0);

   }
}

Baris nomor 19 dan 23 adalah pernyataan untuk mendeklarasikan variabel larikLingkaran, membuat larik lingkaran dengan jumlah elemen 7 dan memberi variabel larikLingkaran acuan ke larik lingkaran. Adapun elemen dari larikLingkaran adalah variabel larikLingkaran[0], larikLingkaran[1], larikLingkaran[2] … larikLingkaran[6] yang juga mengacu ke obyek dari kelas Lingkaran.

Baris nomor 25 – 27 adalah perulangan for yang menginisialisi parameter jari2 obyek kelas Lingkaran dengan nilai acak yang dihasilkan oleh metoda random dengan rentang nilai 1 – 21. Baris nomor 35 – 39 adalah perulangan for untuk menampilkan nilai jari2, keliling dan luas setiap elemen yang tersimpan di larikLingkaran. Untuk mengakses nilai jari2 (data field atau instance variable) di elemen obyek Lingkaran, Anda dapat menggunakan ekspresi larikLingkaran[x].getJari2, sedangkan untuk mengakses nilai hasil operasi untuk mencari keliling dan luas lingkaran, Anda dapat memanggil (invoke) metoda hitungKeliling dan hitungLuas dari kelas Lingkaran menggunakan ekspresi larikLingkaran[x].hitungKeliling dan larikLingkaran[x].hitungLuas.

Baris nomor 42 adalah pernyataan untuk mengakses variabel kelas statik jumlahObjek dari kelas Lingkaran. Variabel kelas ini digunakan untuk mengetahui jumlah obyek kelas Lingkaran yang telah dibuat. Untuk mengakses nilai variabel kelas statik, Anda menggunakan metoda statik getJumlahObjek. Anda dapat menggunakan salah satu dari elemen (yang mana saja) yang ada di obyek Lingkaran yaitu larikLingkaran[1] sampai dengan larikLingkaran[7].

Obyek sebagai elemen larik Java

Baca artikel terkait lainnya:

Untuk memperbaiki mutu konten, Anda dapat berpartisipasi dengan cara melaporkan apabila menemukan kesalahan ketik, kata-kata rangkap, redaksi kurang pas (jelas), gambar pendukung tidak ada dan sebagainya melalui form Kontak Kami untuk mendapatkan perbaikan. Terima kasih atas kerjasamanya.

Hindro HindriantoHindro adalah pendiri sekaligus admin termasmedia.com dan topikit.com, blog online yang mengulas teknologi informasi. Dunia web mulai ditekuni tahun 2012 dengan mempelajari CMS Joomla dan Wordpress. Beberapa buku yang sekarang dipelajari antara lain PHP, HTML5, ASP.NET 4.5, JavaScript, CSS3, MySQL, Adobe Dreamweaver, Adobe Photoshop dan Adobe Flash.