Indikator Pencapaian Kompetensi dan Tujuan Pembelajaran
IPK Pengetahuan
1. Menjelaskan konsep class dalam pemrograman berorientasi obyek.
2. Menerapkan class dalam pemrograman berorientasi obyek.
3. Menjelaskan konsep method dalam pemrograman berorientasi obyek.
4. Menerapkan method dalam pemrograman berorientasi obyek.
5. Menjelaskan konsep obyek dalam pemrograman berorientasi obyek.
6. Menerapkan obyek dalam pemrograman berorientasi obyek.
IPK Keterampilan
1. Merancang program aplikasi berorientasi obyek dengan penerapan class, method dan obyek.2. Membuat kode program aplikasi berorientasi obyek dengan penerapan class, method dan obyek.
3. Menguji program aplikasi berorientasi obyek yang menerapkan class, method dan obyek.
Tujuan Pemelajaran
Setelah melalui kegiatan diskusi, menggali informasi, presentasi dan tugas praktek diharapkan peserta didik akan dapat :1) Siswa dapat menjelaskan konsep class dalam pemrograman berorientasi obyek dengan baik.
2) Siswa dapat Menerapkan class dalam pemrograman berorientasi obyek dengan baik.
3) Siswa dapat Menjelaskan konsep method dalam pemrograman berorientasi obyek dengan baik.
4) Siswa dapat Menerapkan method dalam pemrograman berorientasi obyek dengan baik.
5) Siswa dapat Menjelaskan konsep obyek dalam pemrograman berorientasi obyek dengan baik.
Materi Kegiatan Pembelajaran
Class
Merupakan bentuk logis yang menjadi landasan bangun seluruh bahasa pemograman berorientasi object.
Class mendefinisikan bentuk dan perilaku object.
Class merupakan contoh abstrak dari sebuah object yang telah terbentuk dari proses penyederhanaan.
Dengan kata lain class merupakan cikal bakal dari object. Kemudian contoh nyata atau perwujudan dari sebuah object dinamakan instance.
Class mendefinisikan bentuk dan perilaku object.
Class merupakan contoh abstrak dari sebuah object yang telah terbentuk dari proses penyederhanaan.
Dengan kata lain class merupakan cikal bakal dari object. Kemudian contoh nyata atau perwujudan dari sebuah object dinamakan instance.
Data dan Methode
Data merupakan identitas yang berupa variabel yang menjelaskan properti dari class.
Metoda adalah sekumpulan instruksi untuk menjalankan data yang diberi nama dan dapat dipanggil dari manapun di dalam program dengan menuliskan nama metoda tersebut.
Metoda Main
Salah satu metoda yang paling penting di dalam bahasa Java adalah metoda main. Metoda main harus dideklarasikan sendiri oleh programmer di dalam sebuah kelas.
Kelas yang mempunyai metoda main disebut dengan kelas main (main class), - kelas utama, - akan tetapi tidak semua kelas Java harus mempunyai metoda main.
Semua program kecuali applet yang ditulis dalam bahasa Java dimulai dengan method utama(main).
Metode main() didefinisikan sebagai public static void:
public, berarti metode ini dapat dipanggil dari luar class
static, menunjukkan metode ini bersifat sama untuk semua class atau method yang dapat dipakai tanpa harus menginisialisasi suatu class (maksudnya tanpa menggunakan variabel terlebih dahulu)
void, berarti metode ini tidak mengembalikan nilai.
Argument args[] adalah parameter array objek string argument baris-baris perintah
Class dapat di definisikan sebagai blueprint atau kerangka yang mendifinisikan variable variable atau data dan method method atau perilaku.
Umumnya sebuah object tertentu (contohnya mobil) memiliki data warna tahun, type, nomor polisi dan lain lain.
Objek juga mempunyai perilaku/method, yang berbeda-beda seperti system pengereman, perseneling, stir, keamanan dan lain lain
Jadi data sederhana didalam class berisi deklarasi variable yang akan membentuk object.
Variable yang berupa object ini disebut referensi object (reference object). Artinya pada saat membuat class baru itu berarti kita mendifinisikan type data baru.
Sekali type data baru didefinisikan dalam suatu class berarti type data baru itu dapat digunakan untuk membuat suatu object dari type tersebut.
Dengan kata lain class adalah pola (template) untuk membuat object dan object adalah wujud nyata atau instance dari sebuah class.
Contoh nyata dalam kehidupan sehari-hari misalkan manusia adalah class sedangkan contoh objectnya wujud nyata manusia adalah Udin, Titin, Mimin dan lain lain, sedangkan method nya males, rajin, pandai dsb.
Data atau variable yang didefinisikan di dalam kelas sering pula di sebut dengan instance variable.
Nilai dari data data tersebut selanjutnya akan diakses melaluli method method yang ada , dengan kata lain method sebenernya digunakan sebagai antarmuka atau (interface) antar user (dalam arti di sini pemakai class) atau dengan data data yang terdapat didalam class yang bersangkutan.
Dalam dunia pemograman java, type data digunakan untuk mendeklarasikan variable.
Contoh membuat class
Umumnya sebuah object tertentu (contohnya mobil) memiliki data warna tahun, type, nomor polisi dan lain lain.
Jadi data sederhana didalam class berisi deklarasi variable yang akan membentuk object.
Variable yang berupa object ini disebut referensi object (reference object). Artinya pada saat membuat class baru itu berarti kita mendifinisikan type data baru.
Sekali type data baru didefinisikan dalam suatu class berarti type data baru itu dapat digunakan untuk membuat suatu object dari type tersebut.
Dengan kata lain class adalah pola (template) untuk membuat object dan object adalah wujud nyata atau instance dari sebuah class.
Contoh nyata dalam kehidupan sehari-hari misalkan manusia adalah class sedangkan contoh objectnya wujud nyata manusia adalah Udin, Titin, Mimin dan lain lain, sedangkan method nya males, rajin, pandai dsb.
Data atau variable yang didefinisikan di dalam kelas sering pula di sebut dengan instance variable.
Nilai dari data data tersebut selanjutnya akan diakses melaluli method method yang ada , dengan kata lain method sebenernya digunakan sebagai antarmuka atau (interface) antar user (dalam arti di sini pemakai class) atau dengan data data yang terdapat didalam class yang bersangkutan.
Dalam dunia pemograman java, type data digunakan untuk mendeklarasikan variable.
Contoh membuat class
//Membuat class
class Kotak {
double panjang;
double lebar;
double tinggi;
}
class DemoKotak1 {
public static void main(String[] args) {
double volume;
// instantiasi class menjadi objek
Kotak k;
k = new Kotak();
/*
cara instantiasi yang lebih singkat
Kotak k = new Kotak();
*/
// Mengisikan nilai ke dalam data-data kelas Kotak
k.panjang = 4;
k.lebar = 3;
k.tinggi = 2;
// Menghitung isi/volume kotak
volume = k.panjang * k.tinggi * k.lebar;
// Menampilkan nilai volume ke layar monitor
System.out.println("Volume kotak = " + volume);
}
}
Catatan :
Simpan file tersebut dengan nama sesuai dengan class yang ada main / program utamanya, dalam hal ini yaitu DemoKotak1.java yang kemudian di simpan di direktori d:latihjava
Perhatian : Perhatikan penulisan huruf besar dan huruf kecil harus persis, Java membedakan huruf besar dan huruf kecil.
Lakukan perintah di cmd
c> d: [kemudian tekan tombol enter]
c> cd latihjava [kemudian tekan tombol enter]
c> javac DemoKotak1.java [kemudian tekan tombol enter]
public static void main(String[] args) {
double volume;
// instantiasi class menjadi objek
Kotak k;
k = new Kotak();
/*
cara instantiasi yang lebih singkat
Kotak k = new Kotak();
*/
// Mengisikan nilai ke dalam data-data kelas Kotak
k.panjang = 4;
k.lebar = 3;
k.tinggi = 2;
// Menghitung isi/volume kotak
volume = k.panjang * k.tinggi * k.lebar;
// Menampilkan nilai volume ke layar monitor
System.out.println("Volume kotak = " + volume);
}
}
// membuat atau mendeklarasikan dua objek dari satu kelas
class Kotak {
double panjang;
double lebar;
double tinggi;
}
class DemoKotak2 {
public static void main(String[] args) {
double volume1, volume2;
Kotak k1 = new Kotak(); // mendeklarasikan objek k1
Kotak k2 = new Kotak(); // mendeklarasikan objek k2
// Mengisikan nilai ke dalam objek k1
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
// Mengisikan nilai ke dalam objek k2
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
// Menghitung isi/volume dari objek k1
volume1 = k1.panjang * k1.tinggi * k1.lebar;
// Menghitung isi/volume dari objek k2
volume2 = k2.panjang * k2.tinggi * k2.lebar;
// Menampilkan nilai volume k1 dan k2 ke layar monitor
System.out.println("Volume k1 = " + volume1);
System.out.println("Volume k2 = " + volume2);
}
}
Data dan method yang tergabung di dalam satu class dinamakan class member contohnya DemoMethod1, DemoMethod2 dan DemoMethod3 (lihat di bawah)
Contoh:
//program DemoMethod1class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan class & method void ( yang tidak mengembalikan nilai)
void cetakVolume() {
System.out.println("Volume kotak = " + (panjang * lebar * tinggi)) ;
}
}
class DemoMethod1 {
public static void main(String[] args) {
Kotak k1, k2, k3;
// instansiasi objek
k1 = new Kotak();
k2 = new Kotak();
k3 = new Kotak();
// mengisi data untuk objek k1
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
// mengisi data untuk objek k2
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
// mengisi data untuk objek k3
k3.panjang = 8;
k3.lebar = 7;
k3.tinggi = 6;
// memanggil method cetakVolume() untuk masing-masing objek
k1.cetakVolume();
k2.cetakVolume();
k3.cetakVolume();
}
}
Contoh Method yang mengembalikan nilai
//program DemoMethod2
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan class & method yang mengembalikan nilai tipe double
// menghitung volume
double hitungVolume() {
double vol; vol = panjang * lebar * tinggi;
// mengembalikan nilai
return vol;
}
}
class DemoMethod2 {
public static void main(String[] args) {
Kotak k1, k2, k3;
k1 = new Kotak();
k2 = new Kotak();
k3 = new Kotak();
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
k3.panjang = 8;
k3.lebar = 7;
k3.tinggi = 6;
System.out.println("Volume k1 = " + k1.hitungVolume());
System.out.println("Volume k2 = " + k2.hitungVolume());
System.out.println("Volume k3 = " + k3.hitungVolume());
}
}
Contoh Method yang mempunyai parameter
// class dan method dengan parameter
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan method dengan parameter
void isiData(double p, double l, double t) {
panjang = p;
lebar = l;
tinggi = t;
}
double hitungVolume() {
return (panjang * lebar * tinggi);
}
}
class DemoMethod3 {
public static void main(String[] args) {
Kotak k;
// Instansiasi objek
k = new Kotak();
// Memanggil method isiData()
k.isiData(4,3,2);
System.out.println("Volume kotak = " + k.hitungVolume());
}
}
class Kotak {
double panjang;
double lebar;
double tinggi;
}
class DemoKotak2 {
public static void main(String[] args) {
double volume1, volume2;
Kotak k1 = new Kotak(); // mendeklarasikan objek k1
Kotak k2 = new Kotak(); // mendeklarasikan objek k2
// Mengisikan nilai ke dalam objek k1
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
// Mengisikan nilai ke dalam objek k2
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
// Menghitung isi/volume dari objek k1
volume1 = k1.panjang * k1.tinggi * k1.lebar;
// Menghitung isi/volume dari objek k2
volume2 = k2.panjang * k2.tinggi * k2.lebar;
// Menampilkan nilai volume k1 dan k2 ke layar monitor
System.out.println("Volume k1 = " + volume1);
System.out.println("Volume k2 = " + volume2);
}
}
Contoh:
//program DemoMethod1
double panjang;
double lebar;
double tinggi;
// Mendefinisikan class & method void ( yang tidak mengembalikan nilai)
void cetakVolume() {
System.out.println("Volume kotak = " + (panjang * lebar * tinggi)) ;
}
}
class DemoMethod1 {
public static void main(String[] args) {
Kotak k1, k2, k3;
// instansiasi objek
k1 = new Kotak();
k2 = new Kotak();
k3 = new Kotak();
// mengisi data untuk objek k1
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
// mengisi data untuk objek k2
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
// mengisi data untuk objek k3
k3.panjang = 8;
k3.lebar = 7;
k3.tinggi = 6;
// memanggil method cetakVolume() untuk masing-masing objek
k1.cetakVolume();
k2.cetakVolume();
k3.cetakVolume();
}
}
//program DemoMethod2
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan class & method yang mengembalikan nilai tipe double
// menghitung volume
double hitungVolume() {
double vol;
vol = panjang * lebar * tinggi; double vol;
// mengembalikan nilai
return vol;
}
}
class DemoMethod2 {
public static void main(String[] args) {
Kotak k1, k2, k3;
k1 = new Kotak();
k2 = new Kotak();
k3 = new Kotak();
k1.panjang = 4;
k1.lebar = 3;
k1.tinggi = 2;
k2.panjang = 6;
k2.lebar = 5;
k2.tinggi = 4;
k3.panjang = 8;
k3.lebar = 7;
k3.tinggi = 6;
System.out.println("Volume k1 = " + k1.hitungVolume());
System.out.println("Volume k2 = " + k2.hitungVolume());
System.out.println("Volume k3 = " + k3.hitungVolume());
}
}
Contoh Method yang mempunyai parameter
// class dan method dengan parameter
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan method dengan parameter
void isiData(double p, double l, double t) {
panjang = p;
lebar = l;
tinggi = t;
}
double hitungVolume() {
return (panjang * lebar * tinggi);
}
}
class DemoMethod3 {
public static void main(String[] args) {
Kotak k;
// Instansiasi objek
k = new Kotak();
// Memanggil method isiData()
k.isiData(4,3,2);
System.out.println("Volume kotak = " + k.hitungVolume());
}
}
Constructor
Constructor adalah method khusus yang didefinisikan di dalam kelas dan akan dipanggil secara otomatis setiap kali terjadi instantiasi objek
Notes :
- Constructor tidak memiliki type kembalian dan tidak juga void, karena type kembalian dari constructor adalah type kelas itu sendiri.
- Nama constructor harus sama persis dengan kelas yang didefinisikannya
Contoh :
class Kotak { double panjang; double lebar; double tinggi; // Mendefinisikan constructor untuk kelas Kotak tanpa parameter Kotak() { panjang = 4; lebar = 3; tinggi = 2; } double hitungVolume() { return (panjang * lebar * tinggi); } }
class DemoConstructor1 { public static void main(String[] args) { Kotak k1, k2; k1 = new Kotak(); k2 = new Kotak(); System.out.println("Volume k1 = " + k1.hitungVolume()); System.out.println("Volume k2 = " + k2.hitungVolume()); } }
Proses inisialisasi agar lebih dinamis maka dapat dibubuhkan parameter kedalam kelas construktor
// Mendefinisikan constructor untuk kelas Kotak dengan parameter
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan constructor dengan parameter
Kotak(double p, double l, double t) {
panjang = p;
lebar = l;
tinggi = t;
}
double hitungVolume() {
return (panjang * lebar * tinggi);
}
}
class DemoConstructor2 {
public static void main(String[] args) {
Kotak k1, k2;
k1 = new Kotak(4, 3, 2);
k2 = new Kotak(6, 5, 4);
System.out.println("Volume k1 = " + k1.hitungVolume());
System.out.println("Volume k2 = " + k2.hitungVolume());
}
}
Notes :
- Constructor tidak memiliki type kembalian dan tidak juga void, karena type kembalian dari constructor adalah type kelas itu sendiri.
- Nama constructor harus sama persis dengan kelas yang didefinisikannya
Contoh :
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan constructor untuk kelas Kotak tanpa parameter
Kotak() {
panjang = 4;
lebar = 3;
tinggi = 2;
}
double hitungVolume() {
return (panjang * lebar * tinggi);
}
}
class DemoConstructor1 {
public static void main(String[] args) {
Kotak k1, k2;
k1 = new Kotak();
k2 = new Kotak();
System.out.println("Volume k1 = " + k1.hitungVolume());
System.out.println("Volume k2 = " + k2.hitungVolume());
}
}
Proses inisialisasi agar lebih dinamis maka dapat dibubuhkan parameter kedalam kelas construktor
// Mendefinisikan constructor untuk kelas Kotak dengan parameter
class Kotak {
double panjang;
double lebar;
double tinggi;
// Mendefinisikan constructor dengan parameter
Kotak(double p, double l, double t) {
panjang = p;
lebar = l;
tinggi = t;
}
double hitungVolume() {
return (panjang * lebar * tinggi);
}
}
class DemoConstructor2 {
public static void main(String[] args) {
Kotak k1, k2;
k1 = new Kotak(4, 3, 2);
k2 = new Kotak(6, 5, 4);
System.out.println("Volume k1 = " + k1.hitungVolume());
System.out.println("Volume k2 = " + k2.hitungVolume());
}
}
Komentar
Posting Komentar
Nuhun sudah komentar