studi kasus

16
STUDI KASUS

Upload: cormac

Post on 29-Jan-2016

63 views

Category:

Documents


0 download

DESCRIPTION

STUDI KASUS. CONTOH POLYMORPHISM. Contoh-1 class A { void fungsi () { System.out.println (" Fungsi class A");} void fungsi ( int i ) { System.out.println (" Fungsi class A dengan i = "+ i ); } }. public class A1 { public static void main(String[] args ) { - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: STUDI KASUS

STUDI KASUS

Page 2: STUDI KASUS

CONTOH POLYMORPHISM

Contoh-1class A { void fungsi() {System.out.println("Fungsi class A");} void fungsi(int i) {System.out.println("Fungsi class A dengan i = "+i); }} 

public class A1 { public static void main(String[] args) {

A a=new A(); a.fungsi();

a.fungsi(10); }}

Page 3: STUDI KASUS

Contoh-2:

import java.lang.*;public class Perkalian {private double pangkat(int a, int b) {double hasil = 1.0*a*b;//kode programreturn hasil;}private double pangkat(double a, int b,double x, int y) {int z=y;double hasil = 1.0*a*b*z;//kode programreturn hasil;}

private double pangkat(int a, double b) {double hasil = 1.0*a*b;//kode programreturn hasil;}private double pangkat(double a, double b) {double hasil = 1.0*a*b;//kode programreturn hasil;}public static void main(String[] args) {Perkalian kali = new Perkalian();System.out.println(kali.pangkat(10,308));System.out.println(kali.pangkat(10.2,308,2.1,5));

// dst untuk data yg lain}}

Page 4: STUDI KASUS

2. Overriding : Terjadi ketika deklarasi method subclass sama dengan method dari superclassnya.adalah kemampuan suatu subkelas untuk memodifikasi attribute dan method milik kelas supernya (tentu yang memiliki sifat private atau final tidak biasa dilakukan overriding). Modifikasi yang dilakukan, misalnya jumlah parameter, tipe parameter, tipe return value, ataupun lingkungan pemrosesan datanya.

Contoh-1:

class A { void fungsi() {System.out.println("Fungsi class A");} void fungsi(int i) {System.out.println("Fungsi class A dengan i = "+i); }} class B extends A { void fungsi() {System.out.println("Fungsi class B");} void fungsi(int i) {System.out.println("Fungsi class B dengan i = "+i); }}

public class AB1 { public static void main(String[] args) {

A a=new A(); a.fungsi();

a.fungsi(4);B b=new B();

b.fungsi();b.fungsi(10);

} }

Page 5: STUDI KASUS

Contoh-2:

class KelasSuper {public static void main(String[] args) {KelasSuper oks = new KelasSuper();oks.methodAsli();}public void methodAsli() {System.out.println(“Method milik KelasSuper jalan”);}}class SubKelas extends KelasSuper {public void methodAsli() {System.out.println(“Method yg overrided jalan”);

}

public void methodPemanggil() {System.out.println(“Method pemanggil methodAsli jln”);

super.methodAsli(); // yg dipanggil milik kelas super

}public static void main(String[] args) {SubKelas osk = new SubKelas();osk.methodAsli();osk.methodPemanggil();}}

Page 6: STUDI KASUS

Contoh-3:

class Mobil {String warna;int tahunProduksi;public Mobil(String warna, int tahunProduksi){this.warna = warna;this.tahunProduksi = tahunProduksi;}public Mobil(){}void info(){System.out.println("Warna: " + this.warna);System.out.println("Tahun: " + this.tahunProduksi);}}

class MobilKonstruktor{public static void main(String[] args){Mobil mobilku = new Mobil(“Merah”, 2003);mobilku.info();Mobil mobilmu = new Mobil();mobilmu.info();}}

Page 7: STUDI KASUS

CONTOH EKPASULASI

Merupakan suatu cara untuk menyembunyikan implementasi detail dari suatu class. Enkapsulasi mempunyai dua hal mendasar yaitu Information

hiding dan interface to access data.

Page 8: STUDI KASUS

Dalam melakukan pembungkusan kode dan data didalam Java, terdapat tiga tingkat akses yang perlu diketahui yaitu: private, protected dan public.

private dengan mendeklarasikan data dan method menggunakan tingkat akses private, maka data dan method tersebut hanya dapat diakses oleh klas yang memilikinya saja, ini berarti data dan method tersebut tidak boleh diakses atau digunakan oleh kelas-kelas lain yang terdapat dalam program. Untuk mendeklarasikan data atau method menggunakan kata kunci private.

protected suatu data atau method yang dideklarasikan dengan tingkat akses protected dapat diakses oleh kelas yang memilikinya dan juga oleh kelas-kelas yang masih memiliki hubungan turunan. Sebagai contoh apabila data x dalam kelas A dideklarasikan sebagai protected, maka kelas B (yang merupakan turunan dari kelas A) diizinkan untuk mengkases x. Untuk mendeklarasikan suatu data atau method dengan tingkat akses protected menggunakan kata kunci protected.

Page 9: STUDI KASUS

public tingkat akses public merupakan kebalikan dari tingkat akses private. Data maupun method yang bersipat public dapat diakses oleh semua bagian di dalam program, dengan kata lain data atau method yang dideklarasikan dengan tingkat akses public dapat diakses atau dikenali oleh semua kelas yang ada didalam program. Untuk mendeklarasikan suatu data atau method dengan tingkat akses public menggunakan kata kunci public.

Page 10: STUDI KASUS

Bagaimana mengakses anggota-anggota class Siswa ?

Contoh:

public class Siswa { public int nrp; public String nama; 

public void Info() {System.out.println(“Saya adalah MasPen”);}}

 

Page 11: STUDI KASUS

public class IsiData {public static void main(String args[]) {Siswa IT2=new Siswa();IT2.nrp=5;IT2.nama=”Maspaeni”;IT2.Info();}}

Page 12: STUDI KASUS

Bagaimana menyembunyikan information dari suatu class sehingga anggota-anggota class tersebut tidak dapat diakses dari luar ? Dengan memberikan akses control private ketika mendeklarasikan suatu atribut atau method

Page 13: STUDI KASUS

public class Siswa {private int nrp;public String nama;public void Info() {System.out.println(“Saya adalah MasPen”);}

}

Page 14: STUDI KASUS

public class IsiData {public static void main(String args[]) {Siswa IT2=new Siswa();IT2.nrp=5;IT2.nama=”Andi”;IT2.Info();}}

* Jika dijalankan, maka akan terjadi error karena data/variabel nrp menggunakan tingkat akses private

Page 15: STUDI KASUS

Jika NRP dienkapsulasi, bagaimana cara mengakses atribut nrp itu untuk memberikan atau mengubah nilai?Maka, perlu suatu interface untuk mengakses data, yang berupa method dimana di dalamnya terdapat implementasi untuk mengakses data nrp, seperti berikut!

Page 16: STUDI KASUS

public class Siswa {private int nrp;public String nama; 

public void isiNrp(int n) {if (n>=1 && n<=10)nrp=n;elseSystem.out.println("Error...!!"); }

public void Info() {System.out.println(“Saya adalah MasPen”);}}