T2-Pemrograman Berorientasi Objek
Transcript of T2-Pemrograman Berorientasi Objek
Pemrograman Berorientasi Objek
Tujuan
Konsep pemrograman berorientasi objek
Menciptakan kelas
Membuat objek dari suatu kelas
Mengakses variabel dan method suatu kelas
Kata Kunci this
Penentu Akses:public dan private
Kata Kunci static
Konsep pemrograman berorientasi
Objek
Procedural Object Oriented
mengambil, menabung,
mentransfer
pelanggan, uang,
rekening
Objek dan kelas
Kelas pemodelan dari objek yang berisi informasi tentang karakteristik(data) dan tingkah laku yang dimiliki oleh objek tersebut (metode)
Objek perwujudan dari suatu kelas .
girl class object
Nina Mel Tia Santi
Data(variabel): • warna rambut • tinggi badan • warna kulit girl
Kelas
Metode(fungsi/ tingkah laku): • tertawa • menangis
Objek 1
Objek 2
Objek 3
Kelas pada java didefinisikan dengan menggunakan
kata kunci “class”
class namakelas { class body }
siswa
nama:String jurusan:String nrp:int
Contoh: UML class diagram
Menciptakan Kelas
Bentuk umum:
class siswa { String nama; String jurusan; int nrp; }
Membuat Objek dari Suatu Kelas
Untuk membuat objek dari suatu kelas digunakan operator “new”
namakelas variabelreferensiobjek = new namakelas();
siswa a = new siswa();
Bentuk umum:
Contoh:
variabel referensi objek
class siswa { String nama; String jurusan int nrp; } public class siswaku { public static void main(String[] args) { siswa a = new siswa(); a.nama = “rani”; a.jurusan = “telkom”; a.nrp = 7214; System.out.println(“nama” + a.nama + “jurusan” + a.jurusan + “nrp” + a.nrp); } }
Program siswaku.java:
variabelreferensiobjek.namavariabel
Mengakses variabel dari suatu kelas
variabel
Contoh Soal:
class Kotak{ double panjang; double lebar; double tinggi; } class DemoKotak{ public static void main(String[] args){ double volume; Kotak k = new Kotak(); k.panjang = 4; k.lebar = 3; k.tinggi = 2; volume = k.panjang * k.lebar * k.tinggi; System.out.println(“Volume kotak = ” + volume); } }
Soal 1: class Segitiga{ double alas; double tinggi; } class DemoSegitiga{ public static void main(String[] args){ double luas1, luas2; Segitiga s1, s2; s1 = new Segitiga(); s2 = s1; s1.alas = 4; s1.tinggi = 5; luas1 = 0.5 * s1.alas * s1.tinggi; luas2 = 0.5 * s2.alas * s2.tinggi; System.out.println(“Luas segitiga 1 = ” + luas1); System.out.println(“Luas segitiga 2 = ” + luas2); s1 = new Segitiga(); s1.alas = 6; s1.tinggi = 6; luas1 = 0.5 * s1.alas * s1.tinggi; luas2 = 0.5 * s2.alas * s2.tinggi; System.out.println(“Luas segitiga 1 = ” + luas1); System.out.println(“Luas segitiga 2 = ” + luas2); } }
Mengakses Method dari suatu kelas
class Kotak{ double panjang; double lebar; double tinggi; double hitungVolume(){ double volume = panjang * lebar * tinggi; return volume; } } class DemoKotak{ public static void main(String[] args){ Kotak k = new Kotak(); k.panjang = 4; k.lebar = 3; k.tinggi = 2; System.out.println(“Volume kotak = ” + volume); } }
Soal 2:
Siswa nama:String jurusan:String nrp:int setnama(namasiswa:String) setjurusan(jurusansiswa:String) setnrp(nrpsiswa:String)
Dari UML class diagram dan potongan program berikut :
Cita adalah namaku telkom adalah
Jurusanku dan nrpku adalah 7206
Buatlah suatu program sehingga dihasilkan output :
class Siswa{ String nama; String jurusan; int nrp; void setnama(String namasiswa) { nama=namasiswa; } void setjurusan(String jurusansiswa) { jurusan=jurusansiswa; } void setnrp(String nrpsiswa) { nrp=nrpsiswa; } }
Kata kunci this dipergunakan pada pembuatan kelas dan
digunakan untuk menyatakan objek sekarang
Akan menimbulkan kesalahan!!!
c l a s s S i s w a
{
S t r i n g n a m a ;
S t r i n g j u r u s a n ;
i n t n r p ;
v o i d s e t n a m a ( S t r i n g n a m a )
{
n a m a = n a m a ;
}
v o i d s e t j u r u s a n ( S t r i n g j u r u s a n )
{
j u r u s a n = j u r u s a n ;
}
v o i d s e t n r p ( S t r i n g n r p )
{
n r p = n r p ;
}
}
Kata Kunci(Keyword) this
Public : pengaksesan suatu variabel atau metode dapat
dilakukan diluar kelas Private : pengaksesan suatu variabel atau method hanya
dapat dilakukan di dalam kelas, tidak bisa diakses dari luar kelas
Penentu Akses public dan private
-nama:String -jurusan:String -nrp:int +setnama(namasiswa:String) +setjurusan(jurusansiswa:String) +setnrp(nrpsiswa:String) +getnama():String +getjurusan():String +getnrp():int
Kata Kunci Static
static int a; static void method() {…}
Bentuk umum:
Deklarasi method statis
Deklarasi data statis
Note: Data statis dari suatu kelas merupakan variabel global yang dapat diakses oleh semua obyek yang ada Method statis hanya dapat memanggil method yang bersifat statis Method statis hanya dapat mengakses data yang bersifat statis Method statis tidak dapat diacu melalui referensi this maupun super
public class coba4{ static int pencacah=0; int nilai; coba4(int nilai){ this.nilai=nilai; this.pencacah++; }
class coba{ public static void main(String args[]){ coba4 a=new coba4(4); a.info(); coba4 b=new coba4(5); b.info(); coba4 c=new coba4(6); c.info(); } }
Output:
public void info(){ System.out.println(this.nilai); System.out.println(this.pencacah); } }
Contoh :
4 1 5 2 6 3
public class coba5{ static int x=10, y=20; } class coba{ public static void main(String args[]){ coba5 a=new coba5( ); coba5 b=new coba5( ); System.out.println(a.x); System.out.println(a.y); b.x=25; b.y=55; System.out.println(a.x); System.out.println(a.y); } }
Contoh :
Output:
10 20 25 55