Rekayasa Perangkat Rekayasa Perangkat LunakLunak
Rekayasa Perangkat Rekayasa Perangkat LunakLunak
PEMROGRAMAN BERORIENTASI OBJEK DENGAN PEMROGRAMAN BERORIENTASI OBJEK DENGAN JAVAJAVA
Kelas XIIKelas XIIAbdul Aziz S.KomAbdul Aziz S.Kom
Pendahuluan• TUJUANSetelah mempelajari ini diharapkan siswa akan mampu :o Memahami konsep pemrograman berorientasi obyeko Menjelaskan File I/O, tipe data dan variabel pada Javao Menggunakan operatoro Menerapkan kontrol programo Menjelaskan Exception Handlingo Menerapkan Multi-Threadingo Menjelaskan Network Programmingo Membuat program berorientasi obyek dengan classo Menggunakan prinsip inheritance, polymorphism dan
overloadingo Membuat program berorientasi obyek dengan interface dan
paket
Standar Kompetensi dan kompetesi Dasar
(SKKD)Memahami konsep pemrograman berorientasi obyeko Menjelaskan File I/O, tipe data dan variabel pada Javao Menggunakan operatoro Menerapkan kontrol programo Menjelaskan Exception Handlingo Menerapkan Multi-Threadingo Menjelaskan Network Programmingo Membuat program berorientasi obyek dengan classo Menggunakan prinsip inheritance, polymorphism dan
overloadingo Membuat program berorientasi obyek dengan interface
dan paket
8.1. KONSEP PEMROGRAMAN
BERORIENTASI OBJEK• Pemrograman Berorientasi Obyek (Object
Oriented Programming – OOP) adalah programming paradigm yang menggunakan obyek dan interaksinya untuk merancang aplikasi dan program komputer.
• Semua benda yang ada didunia ini dapat kita sebut sebagai object Dalam pemrograman berorientasi objek ada class dan objek.
Apakah object itu?• Semua benda yang ada didunia ini
dapat kita sebut sebagai object• Dalam pemrograman berorientasi
objek ada class dan object.
Konsep OOP• Ada beberapa konsep penting
dalam pemrograman berorientasi yaitu, abstraksi, enkapsulasi, inheritance dan polymorphism.
8.1.1. Abstraksi• Abstraction atau disebut juga
composition merupakan prinsip penyederhanaan dari sesuatu yang kompleks dengan cara memodelkan kelas sesuai dengan masalahnya.
8.1.2. Enkapsulasi• Prinsip encapsulation adalah prinsip
penyembunyian detil dari sebuah kelas terhadap obyek yang berinteraksi terhadapnya. Sebagai contoh ketika kita menjalankan mobil, sebenarnya kita sedang berinteraksi dan kita meminta kepada mobil untuk menjalankan methodnya seperti maju, mundur atau berhenti. Kita berinteraksi hanya dengan beberapa bagian dari mobil (interface) seperti persneling, setir, pijakan gas, pijakan rem dan bagian lain.
8.1.2. Enkapsulasi
8.6. EXCEPTION• Kesalahan dalam sebuah program sering kali muncul,
meskipun program tersebut dibuat oleh programmer berkemampuan tinggi. Untuk menghindari pemborosan waktu pada proses pencarian kesalahan, Java menyediakan mekanisme penanganan exception. Exception adalah singkatan dari Exceptional Events. Menurut definisi umum, exception adalah kondisi abnormal yang terjadi saat runtime. Runtime error atau kesalahan-kesalahan yang terjadi pada saat program berjalan diwujudkan dan exception. Exception dapat dibangkitkan secara otomatis oleh sistem Java runtime maupun sengaja kita buat melalui pernyataan tertentu untuk tujuan tertentu.
Contoh 8.4. Pernyataan input pada Java
import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.IOException;public class InputKeyboard{ public static void main( String[] args ){ BufferedReader dataIn = new BufferedReader(new InputStreamReader( System.in) ); String name = ""; System.out.print("Ketikkan nama anda:"); try{ name = dataIn.readLine(); }catch( IOException e ){ System.out.println("Error!"); } System.out.println("Hai " + name +"!"); }}
Operator
8.8.1. Pembuatan Kelas class NamaKelas tipe data1; tipe data2; … tipe dataN; tipe method1 (daftar parameter) { //blok kode untuk method1 } tipe method2 (daftar parameter) { //blok kode untuk method2 } … tipe methodN (daftar parameter) { //blok kode untuk methodN } }
Contoh 8.22. Membuat kelas sederhana.
class Siswa {String name;String alamat;int usia;}
Contoh 8.23. Pembuatan kelas yang mempunyai method.
• class Siswa {• String nama; • String alamat; • int usia; • double nilaiMatematika; • double nilaiBhsInggris; • double nilaiBhsIndonesia; • double rerata; • // Menghasilkan nama dari Siswa • public String getNama(){ • return nama; • } • // Mengubah nama siswa • public void setNama( String temp ){ • nama = temp; • } • // Menghitung rata – rata nilai • public double getRerata(){ • rerata = ( • nilaiMatematika+nilaiBhsInggris+nilaiBhsI
ndonesia )/3;• return rerata; • } • }
Contoh 8.23. Menggunakan kelas.
• class Siswa {• String nama; • String alamat; • int usia; • }• public class DataSiswa { • public static void main(String[] args) { • Siswa siswa1 = new Siswa(); • siswa1.nama = "Roni"; • siswa1.alamat = "Mergosono Gg. 1 No. 34"; • siswa1.usia = 23; • System.out.println("Nama :" + siswa1.nama); • System.out.println("Alamat :" + siswa1.alamat); • System.out.println("Usia :" + siswa1.usia); • } • }
Contoh 8.31. Contoh overloading.
class Bangun { // method umum public double hitungLuas()
{ System.out.println("Method
belum terdefinisi"); return 0; } }class BujurSangkar extends
Bangun { private double sisi; // overload method
hitungLuas() public double
hitungLuas(double sisi) { double luas = sisi * sisi;
return luas; } }class overloadBangun { public static void
main(String[] args) { BujurSangkar b; // instansiasi obyek b = new BujurSangkar(); // memanggil method
hitungLuas() dari subclass BujurSangkar System.out.println("Luas
BujurSangkar = " + b.hitungLuas(6)); } }
Pembuatan interface.Contoh 8.34. interface Bentuk { public double luas(); public double volume(); }
Contoh 8.34. Penggunaan interface.
class Kubus implements Bentuk {
int x = 10; public double luas( ) { return (6 * x * x); } public double volume() { return (x * x * x); } }
class Lingkaran implements Bentuk {
int radius = 10; public double luas() { return (Math.PI * radius *
radius); } public double volume() { return 0; } }
Kesimpulan• Konsep penting harus pahami dalam pemrograman
berorientasi yaitu, kelas, obyek, abstraksi, enkapsulasi, inheritance dan polymorphism.
• Ada 8 tipe data dasar pada Java yaitu boolean (untuk bentuk logika), char (untuk bentuk tekstual), byte, short, int, long (integral), double and float (floating point).
• Operator yang tersedia pada Java adalah operator aritmatika, relasional, logika dan bitwise.
• Struktur kontrol program untuk percabangan dapat dilakukan dengan pernyataan if, if … else, dan if …else … if, sedangkan pengulangan dapat dilakukan dengan for, while dan do-while
Kesimpulan• Exception adalah kondisi abnormal yang terjadi saat
runtime. Java menyediakan mekanisme try, throw, catch dan finally untuk menangani exception.
• Thread adalah suatu bagian program yang tidak tergantung pada bagian lain dan dapat dijalankan secara bersama-sama. Java membolehkan kita untuk mengatur thread sesuai dengan kebutuhan.
• Java mendukung penuh konsep kelas, inheritance, overriding, overloading, dan polymorphism.
• Paket adalah kumpulan dari kelas-kelas. Sedangkan interface adalah kelas tanpa atribut dan mempunyai method yang dideklarasikan tanpa isi.
Daftar Pustaka• http://bse.depdiknas.go.id/
Top Related