Mengkonstruksi-membuat-obyek dari kelas di rogram Java

Mengkonstruksi Atau Membuat Obyek Dari Kelas Java

1. Mengkonstruksi Obyek.

Di artikel Mendefinisikan Kelas Java, Anda dapat mempelajari cara mendefinisikan sebuah kelas Java, misalnya kelas PersegiPanjang. Anda baru bisa menggunakan sebuah kelas di dalam program Java bila obyek (object) dari kelas tersebut telah dibuat atau dikonstruksi. Sebagai contoh, untuk mengkonstruksi atau membuat obyek kelas PersegiPanjang, Anda dapat menggunakan salah satu konstruktor dari kelas tersebut, didahului dengan kata kunci (keyword) new.

Berikut ini adalah sintaksis untuk mengkonstrusi obyek sebuah kelas Java:

new nama-kelas(parameter);

Dua pernyataan di bawah ini adalah sintaksis untuk mengkonstruksi atau membuat obyek dari kelas PersegiPanjang menggunakan konstruktor yang berbeda:

new PersegiPanjang();
new PersegiPanjang(5.5, 3.5);

Baris pertama adalah pernyataan untuk membuat obyek menggunakan kontruktor pertama dengan nilai data filed panjang 1.0 dan lebar 1.0. Baris kedua adalah pernyataan untuk membuat obyek menggunakan kontruktor kedua dengan nilai data field panjang 5.5 dan lebar 3.5.

Di Java, sebuah kelas normalnya menyediakan konstruktor tanpa argumen. Baris pertama adalah contoh konstruktor tanpa argumen. Konstruktor semacam ini sering disebut dengan no-argument constructor. Anda juga dimungkinkan untuk mendefinisikan sebuah kelas tanpa konstruktor sama sekali.

Di kasus semacam ini, no-argument constructor dengan blok kosong (empty body) secara implisit dideklarasikan di dalam kelas. Konstruktor seperti ini disebut dengan default constructor dan disediakan secara otomatis bila tidak ada satupun konstruktor yang secara eksplisit dideklarasikan di dalam kelas.

2. Variabel Acuan ke Obyek.

Sebuah kelas adalah definisi yang digunakan untuk mendeklarasikan dan membuat obyek dari kelas tersebut. Kelas adalah cetak biru (blue print) untuk obyek yang dibuat. Anda dapat membuat sebanyak mungkin obyek (instance of class) dari sebuah kelas Java.

Proses untuk membuat obyek dari sebuah kelas disebut dengan instantiation. Anda dapat mengakses data field dan metoda melalui obyek yang telah dibuat dengan mengunakan variabel yang mengacu ke obyek (object reference variable atau reference variable). Berikut ini adalah sintaksis untuk mendeklarasikan variabel yang mengacu ke obyek.

   nama-kelas variable-acuan;

Sebuah kelas mendefinisikan sebuah tipe yang disebut dengan tipe acuan (reference type). Variabel yang mempunyai tipe kelas dapat mengacu ke obyek yang dibuat dari kelas tersebut. Anda dapat membuat variabel bangunDatar1 dengan tipe kelas PersegiPanjang agar variabel tersebut dapat mengacu ke obyek yang dibuat dari kelas PersegiPanjang dengan pernyataan sebagai berikut:

PersegiPanjang bagunDatar1;

Variabel bangunDatar1 kini mengacu ke obyek yang telah dibuat dari kelas PersegiPanjang. Anda dapat mengkombinasikan sekaligus deklarasi sebuah variabel yang mengacu ke obyek kelas, membuat obyek dan sekaligus memberi variabel tersebut acuan ke obyek dengan sintaksis sebagai berikut:

   nama-kelas variable-acuan = new nama-kelas(parameter);

contoh,

PersegiPanjang bangunDatar1 = new PersegiPanjang();

Pernyataan di atas mendeklarasikan variabel bangunDatar1 yang mengacu ke obyek dari kelas PersegiPanjang, membuat obyek dari kelas PersegiPanjang menggunakan konstruktor pertama (konstruktor tanpa argumen) dan sekaligus memberi variabel bangunDatar1 acuan ke obyek dari kelas PersegiPanjang.

Anda juga dapat membuat obyek dari kelas PersegiPanjang menggunakan konstruktor kedua. Berikut ini adalah pernyataan untuk mendeklarasikan variabel acuan bangunDatar2, membuat obyek dari kelas PersegiPanjang menggunakan konstruktor kedua dan sekaligus memberi variabel bangunDatar2 acuan ke obyek kelas:

PersegiPanjang bangunDatar2 = new PersegiPanjang(4.5, 8.3);

Yang perlu diperhatikan ketika mengkonstruksi atau membuat obyek dari kelas Java adalah bahwa semua obyek dikonstruksi atau dibuat dengan didahului oleh kata kunci new.

3. Mengakses data dan metoda melalui variabel acuan.

Obyek terlebih dahulu harus dikonstruksi atau dibuat sebelum data dan metoda dari obyek tersebut dapat diakses. Berikut ini adalah sintaksis untuk mengakses data di obyek dari kelas PersegiPanjang.

   variable-acuan.data;

contoh,

// Mengacu ke variabel panjang di obyek PersegiPanjang
bangunDatar1.panjang;
// Mengacu ke variabel lebar di obyek PersegiPanjang
bangunDatar1.lebar;

untuk mengakses metoda di obyek dari kelas PersegiPanjang, Anda dapat menggunakan sintak sebagai berikut:

   variable-acuan.nama-metoda();

contoh,

// Memanggil metoda mencariKelilingPP di obyek PersegiPanjang
bangunDatar1.mencariKelilingPP;

// Memanggil metoda mencariLuasPP di obyek PersegiPanjang
bangunDatar1.mencariKelilingPP;

Di Java, Data field seperti panjang dan lebar juga sering disebut dengan instance variable karena bergantung pada masing-masing obyek yang dibuat. Sedangkan metoda seperti mencariKelilingPP dan mencariLuasPP juga sering disebut dengan instance method karena hanya dapat diminta atau dipanggil melalui masing-masing obyek.

Berikut ini adalah contoh program Java membuat obyek dari kelas PersegiPanjang dengan menggunakan konstruktor pertama dan konstruktor kedua. Data filed panjang dan lebar dari obyek yang dibuat dengan konstruktor pertama kemudian dimodifikasi.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
// Nama field : MengujiPersegiPanjang.java
// Melakukan pengujian kelas persegiPanjang
 
// Mengimpor kelas
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import java.text.DecimalFormat;
 
// Deklarasi kelas berisi metoda main
public class MengujiPersegiPanjang {
 
   // metoda main
   public static void main(String[] args) {
       
      String tampilan;
      DecimalFormat duaAngka = new DecimalFormat("0.00");
   
      // Membuat objek PersegiPanjang dengan konstruktor pertama
      PersegiPanjang bangunDatar1 = new PersegiPanjang();
      tampilan = "Menggunakan Kelas PersegiPanjang\n\n" +
                 "Panjang = " + duaAngka.format(bangunDatar1.panjang) +
                 ", Lebar = " + duaAngka.format(bangunDatar1.lebar) +
                 "\nKeliling = " + duaAngka.format(bangunDatar1.mencariKelilingPP()) +
                 "\nLuas = " + duaAngka.format(bangunDatar1.mencariLuasPP());
 
      // Membuat objek PersegiPanjang dengan konstruktor ketiga
      PersegiPanjang bangunDatar3 = new PersegiPanjang(5.5, 7.5);
      tampilan += "\n\nPanjang = " + duaAngka.format(bangunDatar3.panjang) +
                  ", Lebar = " + duaAngka.format(bangunDatar3.lebar) +
                  "\nKeliling = " + duaAngka.format(bangunDatar3.mencariKelilingPP()) +
                  "\nLuas = " + duaAngka.format(bangunDatar3.mencariLuasPP());
 
      // Memodifikasi panjang dan lebar
      bangunDatar1.panjang = 2.5;
      bangunDatar1.lebar = 4.5;
      tampilan += "\n\nPanjang = " + duaAngka.format(bangunDatar1.panjang) +
                  ", Lebar = " + duaAngka.format(bangunDatar1.lebar) +
                  "\nKeliling = " + duaAngka.format(bangunDatar1.mencariKelilingPP()) +
                  "\nLuas = " + duaAngka.format(bangunDatar1.mencariLuasPP());
 
      // Menampilkan hasil
      JTextArea areaTampilan = new JTextArea();
      areaTampilan.setText(tampilan);
      JOptionPane.showMessageDialog(null, areaTampilan, "Bangun Datar",
         JOptionPane.INFORMATION_MESSAGE);
 
      // Mengakhiri aplikasi
      System.exit(0);
 
   } // Akhir blok metoda main
} // Akhir blok kelas MengujiPersegiPanjang
          
// Mendefinisikan kelas PersegiPanjang
class PersegiPanjang {
 
   // Data field PersegiPanjang
   double panjang = 1.0;
   double lebar = 1.0;
 
   // Konstruktor pertama
   PersegiPanjang() {
   }
 
   // Konstruktor kedua
   PersegiPanjang(double x) {
      panjang = x;
   }
 
   // Konstruktor kedua
   PersegiPanjang(double x, double y) {
      panjang = x;
      lebar = y;
   }
    
   // Metoda mencari keliling
   double mencariKelilingPP() {
      return 2 * (panjang + lebar);
   }
 
   // Metoda memcari
   double mencariLuasPP() {
      return panjang * lebar;
   }
}

Cara mengkonstruksi atau membuat obyek dari kelas Java

Kode program di atas mempunyai dua buah kelas yaitu kelas MengujiPersegiPanjang yang berisi metoda main di baris nomor 10 – 51 dan kelas PersegiPanjang di baris nomor 54 – 83. Kelas MengujiPersegiPanjang berisi metoda main untuk menguji kelas PersegiPanjang.

Java runtime system akan meminta metoda main setiap kali program atau aplikasi Java dijalankan. Metoda main yang berada di kelas MengujiPersegiPanjang membuat dua buah obyek dari kelas PersegiPanjang menggunakan konstruktor pertama dan konstruktor kedua.

Baca artikel Menggunakan Kelas String Di Java

Di baris baris nomor 19, konstruktor pertama digunakan untuk membuat obyek PersegiPanjang dengan nilai data field pajang 1.0 dan lebar 1.0 dan memberi variabel bangunDatar1 acuan ke obyek tersebut. Di baris nomor 27, konstruktor kedua digunakan untuk membuat obyek PersegiPanjang dengan nilai data field panjang 7.5 dan lebar 5.5 dan memberi variabel bangunDatar2 acuan ke obyek tersebut.

Di baris nomor 34 dan 35, nilai data di obyek pertama yang diacu variabel bangunDatar1 kemudian dimodifikasi dengan mengganti nilai data field panjang menjadi 4,5 dan lebar menjadi 2.5. Setelah data field di obyek pertama dimodifikasi, kemudian dihitung kembali keliling dan luas obyek PersegiPanjang pertama dengan memanggil metoda mencariKelilingPP dan mencariLuasPP.

SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It