Enkapsulasi
Enkapsulasi adalah pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain. Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.
enkapsulasi, dia akan melindungi sebuah program dari akses ataupun intervensi dari program lain yang mempengaruhinya. Hal ini sangat menjaga keutuhan program yang telah dibuat dengan konsep dan rencana yang sudah ditentukan dari awal.
Contoh dalam program
Belajar.Java
class belajar{
public String x =”Pintar”;
private String y = “Java”;
}
Pintar.Java
public class Pintar{
public static void main(String[]args){
Coba panggil = new Belajar();
System.out.println(“Panggil X : “+panggil.x);
System.out.println(“Panggil Y : “+panggil.y);
}}
Tipe public dan private mempunyai fungsi yang berbeda. Fungsi publicyang terdapat dalam class Coba pada variable x, memungkinkan nilai dari variable x dapat diakses oleh class Belajar. Sedangkan variable y yang menggunakan fungsi private tidak dapat dipanggil didalam class Belajar.
Polymorphisme
Polymorphism, suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.Atau Polymorphic dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.
Contoh program java nya :
Simpan dengan nama BeautyfullMahasiswa.java
public class BeautyfullMahasiswa extends Mahasiswa{
public void printNama(){
System.out.println(“Hallo, saya Mahasiswa yg cantik n baik”);
Super.printNama();
}
}
Simpan dengan nama Main.java
public class Main{
public static void main(String[] args]) {
BeautyfullMahasiswa mhs = new BeautyfullMahasiswa();
mhs.setNim(“09530524”);
mhs.setNama(“Afrida Asna”);
mhs.printNim();
mhs.printNama();
}
}
Kemudian compile dan run.
C:\>javac BeautyfullMahasiswa.java
C:\>javac Main.java
C:\>java Main
Kontruksi objek mahasiswa
Nim:09530524
Hallo, saya Mahasiswa yg cantik n baik
Nama: Afrida Asna
C:\>
Terlihat bahwa disini kita mengoverride method printNama(), dengan menambahkan beberapa teks tambahan, sehingga method printNama(), pada class BeautyfullMahasiswa, memiliki perilaku yang berbeda dengan class Mahasiswa.
Pewarisan (Inheritance)
Pewarisan adalah salah satu konsep terpenting pemrograman berorientasi objek dan mempunyai dampak langsung pada merancang dan menulis class. Pewarisan adalah proses penciptaan class baru dengan mewarisi karekteristik class yang telah ada, ditambah karakteristik unik kelas yang telah ada. Subclass mewarisi semua method dan variabel dari superclassnya. Secara praktis berarti bahwa jika superclass telah mendefinisikan perilaku yang kita perlukan, maka kita tidak perlu mendefinis ulang perilaku itu, kita cukup membuat class yang merupakan subclass dari superclass yang dimaksud.Contoh Program Pewarisan (Inheritance)
Pewarisan adalah salah satu konsep terpenting pemrograman berorientasi objek dan mempunyai dampak langsung pada merancang dan menulis class. Pewarisan adalah proses penciptaan class baru dengan mewarisi karekteristik class yang telah ada, ditambah karakteristik unik kelas yang telah ada. Subclass mewarisi semua method dan variabel dari superclassnya. Secara praktis berarti bahwa jika superclass telah mendefinisikan perilaku yang kita perlukan, maka kita tidak perlu mendefinis ulang perilaku itu, kita cukup membuat class yang merupakan subclass dari superclass yang dimaksud.Contoh Program Pewarisan (Inheritance)
//Program utama
public class TestMobil {
public static void main(String[] args){
Mobil mobil = new Mobil();
Kijang kijang = new Kijang();
Escudo escudo = new Escudo();
BMW bmw = new BMW();
mobil.injakPedalGas();
mobil = kijang;
mobil.injakPedalGas();
mobil = escudo;
mobil.injakPedalGas();
mobil = bmw;
mobil.injakPedalGas();
}
}
//Buat kelas baru sebagai objek dari program utama
public class Mobil {
public void injakPedalGas(){
System.out.println("Mobil berjalan...");
}
}
class Kijang extends Mobil{
public void injakPedalGas(){
System.out.println("Mobil Melaju dengan kecepatan 80 Km/jam...");
}
}
class Escudo extends Mobil {
public void injakPedalGas(){
System.out.println("Mobil Melaju dengan kecepatan 70 Km/jam...");
}
}
class BMW extends Mobil{
public void injakPedalGas(){
System.out.println("Mobil Melaju dengan kecepatan 100 Km/jam...");
}
}
Output
Abstract Class
Class Abstrak tidak berbeda dengan class – class lainnya yaitu memiliki class members (method dan variabel). Sebuah class adalah abstrak jika salah satu methodnya dideklarasikan abstrak. Method abstrak adalah method yang tidak memiliki implementasi. Contoh deklarasi method abstrak:
abstract public void cetak();
Beberapa hal yang perlu diperhatikan adalah sebagai berikut:
- Class abstrak tidak dapat dibuatkan instan atau objeknya menggunakan keyword new.
- Sebuah class dapat dideklarasikan sebagai class abstrak walaupun tidak memiliki method abstrak.
- Variabel dengan tipe class abstrak tetap bisa diciptakan, tetapi harus refer ke subclass dari class abtrak tersebut yang tentunya tidak abstrak.
Perhatikan contoh class abstrak di bawah ini.
abstrak public class Mobil {
public void injakPedalGas();
public void injakRem(){
System.out.println(“Mobil berhenti!”);
}
}
public class Kijang extends Mobil{
public void injakPedalGas(){
System.out.println("Mobil Melaju dengan kecepatan 80 Km/jam...");
}
}
public class BMW extends Mobil {
public void injakPedalGas(){
System.out.println("Mobil Melaju dengan kecepatan 100 Km/jam...");
}
}
Objek class abtrak tidak dapat diciptakan menggunakan keyword new secara langsung. Apabila kita terpaksa ingin menciptakan object class abtrak tanpa membuat subclass kongkritnya, maka kita harus mengimplementasikan method – method abstraknya secara langsung saat deklarasi. Perhatikan contoh di bawah ini.
public class TestMobil {
public static void main(String[] args){
Mobil mobil = new Mobil(){
public void injakPedalGas(){
System.out.println("Mobil berjalan...");
}
};
Kijang kijang = new Kijang();
Escudo escudo = new Escudo();
BMW bmw = new BMW();
mobil.injakPedalGas();
mobil = kijang;
mobil.injakPedalGas();
mobil = escudo;
mobil.injakPedalGas();
mobil = bmw;
mobil.injakPedalGas();
}
}
0 comments:
Post a Comment
Terimakasih