KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah...

12
Fakultas : TEKNOLOGI INDUSTRI Pertemuan Ke : 8 Jurusan/Prodi : TEKNIK INFORMATIKA/TEKNIK INFORMATIKA Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2 KONSTRUKTOR DAN OVERLOADING Dosen: Erma Susanti, S.Kom, M.Cs Versi : 1 Revisi : Halaman : 1 Dari : 12

Transcript of KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah...

Page 1: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

Fakultas : TEKNOLOGI INDUSTRI Pertemuan Ke : 8 Jurusan/Prodi : TEKNIK INFORMATIKA/TEKNIK INFORMATIKA Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

KONSTRUKTOR DAN OVERLOADING

Dosen:

Erma Susanti, S.Kom, M.Cs

Versi : 1 Revisi : Halaman : 1 Dari : 12

Page 2: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

Tujuan

Setelah mengikuti mata kuliah ini mahasiswa dapat:

• Mendefinisikan konstruktor

• Menerapkan konsep overloading

2

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 3: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

3

Pokok Bahasan

Dalam modul ini akan diuraikan beberapa topik bahasan yaitu :

1) Pengertian constructor

2) Cara mengoverloading constructor

3) Melakukan inheritance, mendefinisikan subclass

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 4: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

1. Konstruktor

• Konstruktor Method atau biasa disebut konstruktor adalah method yang dapat digunakan untuk memberikan nilai awal saat objek diciptakan

• Method ini akan dipanggil secara otomatis oleh Java ketika new dipakai untuk menciptakan instan kelas

• Konstruktor mempunyai sifat: • Namanya sama dengan nama kelas

• Tidak memiliki nilai balik (termasuk tidak boleh ada kata-kunci void)

4

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 5: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

Contoh Konstruktor

5

class Mobil {

//variabel

private String warna;

private int tahunProduksi;

//konstruktor

public Mobil(String warna, int tahunProduksi) {

this.warna = warna;

this.tahunProduksi = tahunProduksi;

}

//method

public void info() {

System.out.println(“Warna : “ + this.warna);

System.out.println(“Tahun: “ + this.tahunProduksi);

}

}

public class Konstruktor {

public static void main(String [] args){

Mobil mobilku = new Mobil(“Merah”, 2003);

mobilku.info();

}

}

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 6: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

2. Overloading terhadap Konstruktor

• Overloading terhadap konstruktor merupakan suatu mekanisme pembuatan konstruktor yang memiliki bentuk lebih dari satu

• Pembeda antara satu konstruktor dengan konstruktor yang lain berupa jumlah parameter atau tipe parameter

6

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 7: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

Contoh Overloading Konstruktor

7

class Mobil {

//variabel

private String warna;

private int tahunProduksi;

//konstruktor pertama

public Mobil(String warna, int tahunProduksi) {

this.warna = warna;

this.tahunProduksi = tahunProduksi;

}

//konstruktor kedua

public Mobil() {

}

//method

public void info() {

System.out.println(“Warna : “ + this.warna);

System.out.println(“Tahun: “ + this.tahunProduksi);

}

}

public class Konstruktor {

public static void main(String [] args){

Mobil mobilku = new Mobil(“Merah”, 2003);

mobilku.info();

Mobil mobilmu = new Mobil();

mobilmu.info();

}

}

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 8: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

3. Overloading terhadap Method • Overloading juga dapat dikenali pada method non-konstruktor

class Matematika {

static public double kuadrat (double nilai) {

return nilai * nilai;

}

static public int kuadrat (int nilai) {

return nilai * nilai;

}

static public double kuadrat (String nilai) {

double bilangan;

bilangan = Double.valueOf(nilai).doubleValue();

return bilangan * bilangan;

}

}

public class OverloadingMethod {

public static void main(String [] args) {

System.out.println(Matematika.kuadrat(25.0));

System.out.println(Matematika.kuadrat(25));

System.out.println(Matematika.kuadrat(“25”));

}

}

625.0 625 625.0

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : 8 Dari : 12

Page 9: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

Variabel Kelas • Variabel class adalah variabel yang berlaku tidak terbatas hanya pada objek tetapi

pada seluruh objek

• Variabel ini didefinisikan dengan menggunakan kata kunci static class Bilangan{

static int pencacah = 0;

private int nilai;

public Bilangan(int nilai) {

this.nilai = nilai;

this.pencacah++;

}

public void info() {

System.out.println(“Nilai : “ + this.nilai);

System.out.println(“Pencacah : “ + this.pencacah);

System.out.println(“ “);

}

}

public class VariabelKelas {

public static void main (String [] args) {

Bilangan b1 = new Bilangan(55);

b1.info();

Bilangan b2 = new Bilangan(75);

b2.info();

}

}

Nilai : 55 Pencacah : 1 Nilai : 75 Pencacah : 2

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : 9 Dari : 12

Page 10: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

10

Rangkuman

• Constructor adalah metod khusus dengan nama sama dengan nama class dan bertugas membuat objek

• Constructor dapat di overloading dengan mendefinisikan beberapa nama constructor

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 11: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

11

Latihan

1. Buatlah definisi class Motor, yang memiliki data : nama (String) default “NoName”, dan status (boolean) default= false

memiliki metod : tampilkan() : mencetak keterangan nama keadaan motor (status mati /hidup)

memiliki metod : nyalakan() :berfungsi men-set status dari mati (false) menjadi hidup (true). Jika status sudah hidup dan dipanggil metod nyalakan(), maka akan ada komentar “Mesin sudah hidup”, jika mesin belum hidup dan meetod nyalakan() dipanggil maka status diubah menjadi true.

Definisikan Constructor dengan tiga macam

Motor()

Motor (boolean status) untujk mendifinisikan status

Motor (String nama) untuk mendefinisikan nama motor

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12

Page 12: KONSTRUKTOR DAN OVERLOADING - WordPress.com · 2018. 10. 29. · Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : PEMROGRAMAN BERORIENTASI OBJEK Mulai Berlaku : 2017-2

12

Latihan

2. Buatlah definisi class TesMotor , untuk membuat objek motor :

objek :motorku , nama motor HONDA kondisi mati, panggil metod tampilkan(), nama motor dedinisikan lewat constructor

objek motormu, nama motor YAMAHA , panggil metod nyalakan() dan tampilkan() , motor saat objek dibuat kondisi hidup (true) melalui construktor

objek motornya, nama motor SUZUKU , panggil metod nyalakan() dan tampilkan() , gunakan construktor default

Fakultas : Teknologi Industri Pertemuan Ke : 8 Jurusan/Prodi : Teknik Informatika / Teknik Informatika Handout Ke : 1 Kode Matakuliah : MIP1202 Jumlah Halaman : 12 Nama Matakuliah : Pemrograman Berorientasi Objek Mulai Berlaku : 2017-2

Versi : 1 Revisi : 0 Halaman : Dari : 12