2017-05-17 Badiyanto, S.Kom, M.Kom Konstruktor (1) Aturan deklarasi konstruktor : Konstruktor menggunakan nama yang sama dengan nama class Bisa didefinisikan lebih dari satu dalam satu class Dapat didefinisikan tanpa parameter atau dengan satu maupun banyak parameter Tidak mengembalikan nilai Cara memanggil menggunakan operator new 1 2017-05-17 Konstruktor (2) Contoh pemanggilan konstruktor : Namaclass objekbaru = new Namaclass(); Namaclass objekbaru = new Namaclass(tipedata parameter1, tipedata parameter2, …); } contoh public class Lingkaran { //daftar field private double jejari; //method getter: ambil nilai jari-jari public double getJejari () { return this.jejari ; } //konstruktor public Lingkaran( ) { this.jejari = 1.0; } //method hitung luas lingkaran public double hitungLuas () { return (3.14 * this.jejari * this.jejari); } } //method setter: ubah nilai jari-jari public void setJejari (double jejari) { this.jejari = jejari ; } 2 2017-05-17 Method (1) Struktur dasar method : <Tipedata yang dikembalikan> namamethod(tipedata parameter1,…, tipedata parameterN) Misal : Method (2) Tiga komponen method adalah : Tipe data yang dikembalikan Apabila method mengembalikan String maka mengawali definisi method dengan String Apabila method tidak mengembalikan nilai sama sekali maka kita menggunakan keyword void. namamethod Parameter Tidak harus berparameter, namun jika berparameter harus didahului tipe data dan diakhiri variabel 3 2017-05-17 Method (3) Contoh pendeklarasian method : class Pegawai { public double gaji; void setGaji(double gajinya) { this.gaji = gajinya; } double getGaji() { return this.gaji; Cara memanggi kelas Pegawai peg=new Pegawai(); peg.setGaji(5000000); System.out.print( peg.getGaji() ) } } Enkapsulasi Enkapsulasi merupakan aspek pemrograman berorientasi objek yang berguna untuk menyembunyikan informasi class dari luar (data hiding) di mana kita tidak dapat mengubah atau mengakses data member atau variabel secara langsung. Jadi, untuk menerapkan enkapsulasi, data member/variabel perlu dideklarasikan dengan private dan deklarasi methodmethod untuk mendapatkan nilai dari variabel. 4 2017-05-17 Inheritance / Pewarisan Inheritance adalah proses pewarisan data dan method dari satu kelas kepada kelas yang lain. Pewarisan ini bersifat menyeluruh, sehingga semua data dan method yang dimiliki oleh kelas utama akan diturunkan kepada kelas baru. Kelas yang mewariskan disebut Kelas Super (Super Class)/ Kelas Induk. Kelas yang diwariskan disebut subkelas (Sub Class)/Kelas Anak. Inheritance (2) Mengapa menggunakan inheritance? 1. Bersifat reusable 2. Kemudahan dalam me-manage kelas yang memiliki data member dan method yang sama. 5 2017-05-17 Inheritance (3) Overriding Data dan Method 1. 2. Overriding adalah kemampuan suatu subkelas untuk memodifikasi data member dan method dari kelas induknya. Tujuan utamanya adalah melakukan tambahan atau perubahan jika kelas Super tidak memiliki method khusus yang dimiliki sub kelas Inheritance (4) Keyword yang sering dipakai : 1. extends Fungsi : menyatakan bahwa suatu kelas merupakan perluasan dari kelas Induk. 2. super Fungsi : memanggil konstruktor yang ada pada kelas Induk. 6 2017-05-17 Polimorfisme Polimorfisme : kemampuan dari suatu variabel referensi objek untuk memiliki aksi/method yang berbeda bila method yang sama dipanggil, di mana aksi method tergantung dari tipe objeknya. 7