MODUL 3
CONSTRUCTOR
A. Tujuan
1. Mahasiswa memahami penggunaan konstruktor dalam OOP.
2. Mahasiswa memahami penggunaan overloading.
3. Mahasiswa memahami penggunaan overloading konstruktor.
B. Dasar Teori
B.1 Constructor
Constructor merupakan suatu method yang akan memberikan nilai awal
pada saat suatu objek dibuat. Pada saat program dijalankan, constructor akan
langsung memberikan nilai awal pada saat perintah new, membuat suatu objek.
Pada saat kita bekerja dengan constructor, hal mendasar yang perlu diperhatikan,
yaitu :
1) Nama Constructor sama dengan nama Class.
2) Tidak ada return type yang diberikan kedalam Constructor Signature.
3) Tidak ada return stetement, didalam tubuh constructor.
Constructor merupakan sebuah fungsi yang nama fungsinya sama dengan
nama class nya. Sintax constructor sama dengan method namun tidak memiliki
return value (pengembalian nilai). Constructor berfungsi untuk memberikan nilai
awal pada sebuah class ketika class tersebut dibuat dalam bentuk objek pada class
lain. Constructor bias memiliki parameter bisa juga tidak. Dalam constructor, tidak
boleh menggunakan keyword void.
Deklarasi constructor :
<modifier> <nama_class>([parameter])
{
[<statement>]
}
Pada syntax diatas, nama class sama dengan nama fungsinya. By defultnya,
constructornya sudah dibuat ketika membuat sebuah class., namun tidak ada
parameter dan statement nya.
• Defult constructor
Berupa constructor kosong yang secara otomatis akan ditambahkan oleh
compiler pada setiap class. Defult constructor tidak memiliki parameter dan
statement.
Contoh defult constructor :
class Buku()
{
Buku()
{
}
• Pengaksesan Constructor
Pengaksesan constructor dilakukan ketika terjadi pembuatan object. Dengan
cara memberikan nilai diantara tanda “(“ dan “)”. Syntax :
Kata kunci new berfungsi untuk membuat objek baru dari class tertentu. Setelah
membuat objek, kita bisa mengakses atribut dan method dari objek tersebut.
Contoh:
namaObj.namaMethod();
namaObj.atribut1;
Objek merupakan sebuah instance dari class. Dan untuk membuat objek tersebut
dapat menggunakan keyword new. Misalnya:
Kendaraan mobil = new Kendaraan("Innova");
Kendaraan mobil = new Kendaraan("Innova");
Pada pernyataan di atas, suatu objek dengan referensi mobil telah dibuat dan
memiliki nama Innova dengan tipe String. Kemudian “Innova” akan dilewatkan
(passed) sebagai argumen pada konstruktor berikut ini dari class Kendaraan:
Kendaraan(String nama) { this.nama = nama;
Dengan demikian, bisa dilihat bahwa sebuah constructor seperti contoh di atas akan
mengizinkan untuk menentukan nama ketika objek-objek dari class Kendaraan di
buat. Suatu constructor merupakan blok kode yang istimewa dari sebuah class dan
akan selalu dipanggil ketika instance dari class dibuat. Bisa dikatakan bahwa
constructor diperlukan untuk menjamin bahwa objek yang dibuat dari suatu class
telah diinisialisasi dengan keadaan yang diinginkan.
b. Script Program
package javaapplication40;
import java.util.Scanner;
c. Hasil Running
package javaapplication40;
Script di atas mendefinisikan package dengan nama javaapplication40;.Dapat
dikatakan bahwa kita membungkus suatu program ke dalam satu paket yang sama.
import java.util.Scanner;
Script di atas mendefinisikan kelas dengan nama Kasir, yang diberi modifier acces
level dengan kata kunci public, yang digunakan untuk memberikan akses yang lebih luas,
sehingga kelas tersebut dapat diakses dari package lain. Jika pada variabel, maka variabel
tersebut dapat diakses dari kelas lain. “private String namaBarang;” bertipe data
String yang digunakan untuk menyimpan nama barang yang akan dibeli. “private int
hargaBarang;” bertipe data int yang digunakan untuk menyimpan harga barang.
“private int jumlahBarang;” bertipe data int yang digunakan untuk menyimpan
jumlah barang. “private boolean pembayaranCash;” bertipe data boolean yang
digunakan untuk menunjukkan dua pilihan, misalnya iya atau tidak. “ private int
totalHarga;” bertipe data int yang digunakan untuk menyimpan total harga pembelian.
Pada program ini, terdapat constructor Kasir yang memiliki parameter namaBarang,
hargaBarang, jumlahBarang, dan pembayaranCash. Pada blok kode di dalam constructor,
nilai dari parameter yang diterima akan di instansiasi yang sesuai (this.namaBarang,
this.hargaBarang, this.jumlahBarang, dan this.pembayaranCash). Dan juga totalHarga akan
dihitung dengan mengalikan hargaBarang dengan jumlahBarang.
Pada program diatas menggunakan kelas Scanner untuk mengambil input dari user
melalui terminal. Program ini memiliki empat variable yaitu namaBarang bertipe String,
hargaBarang bertipe int, jumlahBarang bertipe int, dan pembayaranCash bertipe boolean.
Pertama program akan mencetak "Nama barang: " menggunakan perintah
“System.out.print("Nama barang: ");” dan mengambil input dari user untuk
dimasukkan ke variabel namaBarang dengan menggunakan method nextLine() dari objek
Scanner.
Kemudian, program akan mencetak "Harga barang: " menggunakan perintah
“System.out.print("Harga barang: ");” dan mengambil input dari user untuk
dimasukkan ke variabel hargaBarang dengan menggunakan method nextInt() dari objek
Scanner.
DAFTAR PUSTAKA
Schildt, H. ( 2019). The Complete Reference Java Seventh Edition. New York: McGraw-
Hill.
Constructor pada Java – Frieyadie. (2021, May 07). Retrieved
from http://frieyadie.web.id/constructor-pada-java
9 Aturan Dan Contoh Penggunaan Constructor Pada Program Java – Bahasa Java. (2021,
May 06). Retrieved from https://bahasajava.com/9-aturan-contoh-
penggunaanconstructor-pada-program-java
Muhardian, A. (2021). Belajar Java OOP: Memahami Konsep Dasar OOP (untuk Pemula).
Petani Kode. Retrieved from https://www.petanikode.com/java-oop