Bahasa Pemrograman (Pemrograman Visual) Object Oriented Programming
Objective Class Object
Objective Mahasiswa dapat menggunakan class, object dalam Java
OBJECT ORIENTED Konsep OOP menghasilkan sistem pemrograman yang cepat, fleksibel, kompak, dan terstruktur, secara logikal maupun non logikal (dokumentasi, leksikal, dll) What’s Object An object is a software bundle of related variables and methods. Software objects are often used to model real-world objects you find in everyday life. kucing, mangga adalah obyek Apa yang dimiliki obyek state (keadaan) implementasinya menjadi properties, atau variabel milik obyek behaviour implementasinya akan menjadi method atau fungsi milik sebuah kelas
OBJECT Object adalah sesuatu yang memiliki 1 set tanggung jawab dan satu set keadaan (state) Tanggung jawab diimplementasikan menggunakan method State diimplementasikan menggunakan attribute attribute dan method selanjutnya merupakan member dari sebuah obyek
CLASS Definisi CLASS : class adalah blue print atau prototipe yang mendefinisikan attribute (variable) dan method yang umum untuk suatu objek . class disusun berdasarkan karakteristik sebuah objek benda Sifat ini disebut sebagai Abstraksi (Abstraction) class adalah penampung sekumpulan elemen data (variable) dan kode program (function) yang digunakan oleh pengolahan datanya Sifat ini disebut sebagai enkapsulasi(Encapsulation) . class dapat disusun secara hierarki sehingga suatu class dapat mewariskan beberapa atau semua karakteristiknya ke class lain (class anak /child class). Sifat ini disebut sebagai Pewarisan (Inheritance)
CLASS Class : susunan kode dan data Instance : objek baru yang merupakan turunan sebuah class attribute : semua data yang berhubungan dengan sebuah objek Methods : semua fungsi dalam sebuah objek Enkasulapsi : properti objek hanya dapat diakses dan diubah dengan methods objek tersebut Interface : methods untuk melakukan enkasulapsi
CLASS Inheritance : membuat class turunan berdasarkan class induk Superclass : class induk Subclass : class hasil inheritance
Sintak Dasar Class Deklarasi class : public class namaClass { block programming Berisi attribute , method type_data namaattribute ; public type namaMethod() { isi blok method .. } //blok method } //blok class
Scoping Dalam Class public: : protected : private : Default scope untuk attribute dan methods Keyword : var, public member dapat diakses oleh kode dari luar dan subclass dapat me- ”warisi”-nya protected : attribute dan method yang dapat diakses oleh method suatu class atau inheritnya member tidak dapat diakses oleh kode luar tapi subclass dapat me-”warisi”-nya private : Attribute dan method yang hanya dapat diakses oleh class atau subclass yang sama member tidak dapat diakses oleh kode luar maupun subclass
Attribute Suatu class menyimpan karakteristik suatu benda dalam suatu attribute. Attribut ini dapat berupa Variabel atau konstanta Attribute berjenis : - private : hanya dapat di akses dalam class - public : dapat diakses dari luar class Jika tidak dituliskan jenis private atau public maka akan di nyatakan sebagai attribute public Contoh : Class Orang mempunyai attribute seperti nama, warnaRambut, tinggi, berat , tahunLahir dan lain - lain. Class KoneksiDB mempunyai attribute seperti alamatServer, userName, Password dan namaDatabase Contoh deklarasi attribute dalam class : private float totalNilai; //attribute private bertipe float hanya dapat diakses dari class public String namaMahasiswa : //attribut public bertipe String dapat diakses dari luar class float nilaiAkhir; //attribut public bertipe float dapat diakses dari luar class
Constructor Constructor merupakan method utk inisialisasi objek , dapat menggunakan parameter utk mengisi properties pada object, constructor harus sama dengan nama class. /** Class Mobil berisi warna,noPol, merek , pemilik mobil * nanti digunakan di program utama sebagai object */ public class Mobil { private String sMerek; //attribute private String sWarna; //attribute private String sNoPol; //attribute String sPemilik; //attribute public /* method constructor harus sama dengan nama class utk mengisi default field sMerek,sWarna, sNoPol */ public Mobil() { sMerek = "Avanza"; sWarna = "Putih"; sNoPol = "B 1234 ZZZ"; sPemilik = ""; } /*method constructor dgn parameter utk mengisi field merek,warna, noPol*/ public Mobil(String s1, String s2, String s3,String s4) { sMerek = s1; sWarna = s2; sNoPol = s3; sPemilik = s4; } } //end class
Edit class Mobil , tambahkan 2 method ini : Methods semua fungsi dalam class. Jenis method : public atau private. return value berupa tipe data jika memiliki returnValue atau void jika tidak memiliki return value return value adalah nilai balik dari suatu method. Deklarasi method jenis returnValue namaMethod(parameter) {} Contoh : public String getIdentitas() { blok program }; //memiliki return value berupa String. public void setIdentitas() { blok program}; //tidak memiliki return value; Edit class Mobil , tambahkan 2 method ini : /* getIdentitas adalah method utk mendapatkan return value bertipe String siap utk di cetak */ public String getIdentitas() { String output; output = "Merek : " + sMerek + "\n" + "No Polisi: " + sNoPol + "\n" + "Warna : " + sWarna + "\n" + "Pemilik : " + sPemilik; return output; } /* method void setIdentitas merupakan method utk mengisi attribute class , method ini tidak memiliki return value */ public void setIdentitas(String merek,String noPol,nString warna, String pemilik) { sMerek = merek; sNoPol = noPol; sWarna = warna; sPemilik = pemilik; }
Implementasi class harus di instance dalam suatu object contoh : /* dari class Mobil maka dapat dibuat dlm beberapa object */ Mobil mobilSaya = new Mobil(); Mobil mobilKantor = new Mobil(“Fortuner”,”Hitam”,”B 2020 UPJ”,”UPJ”);
Contoh Implementasi dalam class : Mobilku /* Class MobilKu merupakan implementasi dari class Mobil dengan menampilkan merek,warna, noPol */ import javax.swing.JOptionPane; public class MobilKu { public static void main(String[] args) { Mobil mobilSaya=new Mobil(); JOptionPane.showMessageDialog(null, mobilSaya.getIdentitas()); // attribute sPemilik karena public bisa diakses dari luar mobilSaya.sPemilik = "Chan"; JOptionPane.showMessageDialog(null, "Setelah di update pemilik mobil\n"+ mobilSaya.getIdentitas()); //Ganti identitas Mobil mobilSaya.setIdentitas("Xpander", "B 22 Can", "Silver", "Chaerul"); JOptionPane.showMessageDialog(null, "Setelah di update identitas \n"+ }
Latihan : Edit class Mobilku tambahkan satu object mobilKantor dari class Mobil. warna putih, plat nomor B 888 UPJ, Pemilik : Universitas Pembangunan Jaya, merek Fortuner Tampilkan output mobil UPJ dalam Message Dialog. Modifikasi class Mobil tambahkan method setWarna utk mengganti warna. Modifikasi class Mobilku tambahkan showInputDialog untuk mengganti warna mobil, gunakan setWarna utk mengubah attribut warna berdasarkan showInputDialog. Gunakan showInputDialog utk mengganti pemilik utk object mobilSaya , tampilkan identitas dari mobilSaya yang sudah diubah warnanya dgn menggunakan showMessageDialog.
“The More You Share, The More You Get” Terima Kasih “The More You Share, The More You Get”