OBJECT ORIENTED PROGRAMMING (OOP)
Disusun Oleh:
Nur Khaliem MS, S.Kom
Disusun Oleh:
Nur Khaliem MS, S.Kom
Pemrograman Berorientasi Objek (Object Oriented Programming) dapat di singkat dengan OOP, bahasa pemprograman Java pada umumnya hampirsama denagnbahasa pemrograman lain, seperti C++, VBasic, Delphi, VFoxPro. Tetapi kadang terdapat perbedaan-perbedaan kecil antara penerapan konsep-konsep tersebut dalam masing-masing bahasa. Perbedaan-perbedaan ini juga dijelaskan dalam java dalam masing-masing konsep.
1. Kelas
Kelas adalah semacam plat, atau sample, untuk membuat sebuah objek. Kita ibaratkan sebuah cetakan image yang digunakan untuk membuat berbagai macam bentuk image. Image yang dihasilkan dari plat tersebut adalah objek dari kelas plat image.
1. Kelas
Kelas adalah semacam plat, atau sample, untuk membuat sebuah objek. Kita ibaratkan sebuah cetakan image yang digunakan untuk membuat berbagai macam bentuk image. Image yang dihasilkan dari plat tersebut adalah objek dari kelas plat image.
2. Objek
Dalam sebuah program objek memiliki dua karakteristik, yaitu state dan behaviour.
a. State adalah keadaan dari sebuah objek,
Seperti mobil memiliki state warna, model, tahun pembuatan, kondisi, dan lain-lain. Sedang
b. behaviour adalah kelakuan dari objek tersebut,
Seperti mobil dapat melaju, membelok, berhenti, membunyikan klakson, menyalakan lampu, menyalakan riting dll. Objek menyimpan statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode.
Dalam sebuah program objek memiliki dua karakteristik, yaitu state dan behaviour.
a. State adalah keadaan dari sebuah objek,
Seperti mobil memiliki state warna, model, tahun pembuatan, kondisi, dan lain-lain. Sedang
b. behaviour adalah kelakuan dari objek tersebut,
Seperti mobil dapat melaju, membelok, berhenti, membunyikan klakson, menyalakan lampu, menyalakan riting dll. Objek menyimpan statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode.
3. Pewarisan (inheritance)
Pewarisan (inheritance) berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Sebagai contoh, sebuah kelas Mobil akan mewarisi state dan behaviour dari kelas MobilBMW. Kelas MobilBMW disebut subkelas, atau kelas anak, dari kelas Mobil, yang disebut superkelas (Master), atau kelas induk.Seluruh subkelas akan mewarisi (inherits) state dan behaviour dari superkelasnya. Dengan begitu, semua subkelas dari superkelas yang sama akan memiliki state dan behaviour yang sama. Namun, masing-masing subkelas bisa menambah sendiri state atau behaviournya.
Pewarisan (inheritance) berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Sebagai contoh, sebuah kelas Mobil akan mewarisi state dan behaviour dari kelas MobilBMW. Kelas MobilBMW disebut subkelas, atau kelas anak, dari kelas Mobil, yang disebut superkelas (Master), atau kelas induk.Seluruh subkelas akan mewarisi (inherits) state dan behaviour dari superkelasnya. Dengan begitu, semua subkelas dari superkelas yang sama akan memiliki state dan behaviour yang sama. Namun, masing-masing subkelas bisa menambah sendiri state atau behaviournya.
4. Engkapsulasi
Engkapsulasi dapat dianggap sebagai sebuah wadah. Engkapsulasi inilah yang diimplementasikan dalam sebuah kelas bahwa di dalam sebuah kelas terdiri dari atribute dan method yang diletakkan dalam suatu kelas, engkapsulasi pada sebuah kelas bertujuan untuk melindungi atribut dan method-method yang ada didalam kelas agar tidak sembarangan diakses oleh kelas lain.
public class rumah {
int pintu = 0;
int jendela = 0;
// method
void bukapintu(int pintudibuka) {
pintu= pintu+ pintudibuka;
System.out.println(" Pintu Dibuka:" + pintu);
}
void tutupintu(int pintuditutup) {
pintu= pintu+ pintuditutup;
System.out.println(" Pintu Ditutup:" + pintu);
}
void tambahKecepatan(int pertambahanKecepatan) {
kecepatan = kecepatan+ pertambahanKecepatan;
System.out.println(" Kecepatan:" + kecepatan);
}
void bukajendela(int jendeladibuka) {
jendela= jendeladibuka;
System.out.println(" Lampu dinyalakan:" + lampu);
}
void tutupjendela(int jendeladitutup) {
jendela= jendela+ jendeladitutup;
System.out.println(" Lampu dipadamkan:" + lampu);
}
}
public class rumahberaksi {
public static void main(String[] args) {
// Membuat object
rumah rumahku = new rumah();
//memanggil atribut dan memberi nilai
rumahku.pintu=20;
rumahku.lampu=5;
// Memanggil method dan menunjuk nilai parameter
rumahku.pintudibuka(30);
rumahku.pintuditutup(3);
rumahku.lampudinyalakan(30);
rumahku.lampudimatikan(3);
}
}
public class rumahtingkat extends rumah {
int tangga;
public void naiktanggal(int nilaitangga) {
tangga = nilaitangga;
System.out.println("Naik Tangga:"+tangga);
}
}
public class rumahtingkatberaksi {
public static void main(String[] args) {
// Membuat object
rumahtingkat rumahku = new rumahtingkat();
// Memanggil method di object
rumahku.pintudibuka(30);
rumahku.pintuditutup(3);
rumahku.lampudinyalakan(30);
rumahku.lampudipadamkan(3);
rumahku.tangga(20);
}
Engkapsulasi dapat dianggap sebagai sebuah wadah. Engkapsulasi inilah yang diimplementasikan dalam sebuah kelas bahwa di dalam sebuah kelas terdiri dari atribute dan method yang diletakkan dalam suatu kelas, engkapsulasi pada sebuah kelas bertujuan untuk melindungi atribut dan method-method yang ada didalam kelas agar tidak sembarangan diakses oleh kelas lain.
public class rumah {
int pintu = 0;
int jendela = 0;
// method
void bukapintu(int pintudibuka) {
pintu= pintu+ pintudibuka;
System.out.println(" Pintu Dibuka:" + pintu);
}
void tutupintu(int pintuditutup) {
pintu= pintu+ pintuditutup;
System.out.println(" Pintu Ditutup:" + pintu);
}
void tambahKecepatan(int pertambahanKecepatan) {
kecepatan = kecepatan+ pertambahanKecepatan;
System.out.println(" Kecepatan:" + kecepatan);
}
void bukajendela(int jendeladibuka) {
jendela= jendeladibuka;
System.out.println(" Lampu dinyalakan:" + lampu);
}
void tutupjendela(int jendeladitutup) {
jendela= jendela+ jendeladitutup;
System.out.println(" Lampu dipadamkan:" + lampu);
}
}
public class rumahberaksi {
public static void main(String[] args) {
// Membuat object
rumah rumahku = new rumah();
//memanggil atribut dan memberi nilai
rumahku.pintu=20;
rumahku.lampu=5;
// Memanggil method dan menunjuk nilai parameter
rumahku.pintudibuka(30);
rumahku.pintuditutup(3);
rumahku.lampudinyalakan(30);
rumahku.lampudimatikan(3);
}
}
public class rumahtingkat extends rumah {
int tangga;
public void naiktanggal(int nilaitangga) {
tangga = nilaitangga;
System.out.println("Naik Tangga:"+tangga);
}
}
public class rumahtingkatberaksi {
public static void main(String[] args) {
// Membuat object
rumahtingkat rumahku = new rumahtingkat();
// Memanggil method di object
rumahku.pintudibuka(30);
rumahku.pintuditutup(3);
rumahku.lampudinyalakan(30);
rumahku.lampudipadamkan(3);
rumahku.tangga(20);
}
contoh lain :
/*
* To change this template, choose Tools Templates
* and open the template in the editor.
*/
/**
*
* @author Administrator
*/
public class acberaksi {
public static void main(String[] args){
ac ackamar=new ac();
System.out.println("Status Ac Saat Ini : Mati" );
ackamar.hidupkan();
ackamar.dinginkan();
ackamar.dinginkan();
ackamar.panaskan();
ackamar.panaskan();
ackamar.matikan();
}
}
___________________________________________________________
Hasil compile AC
run:
Status Ac Saat Ini : Mati
Hidupkan Ac! --> Ac Hidup
Dinginkan Ac! --> Ac Dingin
Dinginkan Ac! --> Ac Tambah Dingin
Panaskan Ac! --> Ac Panas
Panaskan Ac! --> Ac Tambah Panas
Matikan Ac! --> Lampu Mati
BUILD SUCCESSFUL (total time: 0 seconds)
/*
* To change this template, choose Tools Templates
* and open the template in the editor.
*/
/**
*
* @author Administrator
*/
public class acberaksi {
public static void main(String[] args){
ac ackamar=new ac();
System.out.println("Status Ac Saat Ini : Mati" );
ackamar.hidupkan();
ackamar.dinginkan();
ackamar.dinginkan();
ackamar.panaskan();
ackamar.panaskan();
ackamar.matikan();
}
}
___________________________________________________________
Hasil compile AC
run:
Status Ac Saat Ini : Mati
Hidupkan Ac! --> Ac Hidup
Dinginkan Ac! --> Ac Dingin
Dinginkan Ac! --> Ac Tambah Dingin
Panaskan Ac! --> Ac Panas
Panaskan Ac! --> Ac Tambah Panas
Matikan Ac! --> Lampu Mati
BUILD SUCCESSFUL (total time: 0 seconds)
Tidak ada komentar:
Posting Komentar
Tugas Mahasiswa
Tugas SMA
Tugas SMK
Lain-Lain