1. Sebutkan
definisi dari Pemrograman Berorientasi Objek !
2. Sebutkan
perbedaan dari paradigma Pemrograman Berorientasi Objek dengan Pemrograman
Berbasis Struktur !
3. Sebutkan
dan jelaskan definisi dari:
a.
Objek
b.
Atribut
c.
Class
4. Apa
pengertian dari :
a.
Encaptulation
b.
Inheritas
c.
Polymorphism
5. Buat
program dengan java untuk :
a.
Mencari luas segitiga
b.
Mencari angka ganjil dan genap
c.
Mencari agka terbesar dari 3 buah angka
JAWAB
1.
Pemrograman Berorientasi Objek
(Object Oriented Programming/OOP) merupakan pemrograman yang berorientasikan
kepada objek, dimana semua data dan fungsi dibungkus dalam class-class atau
object-object. Setiap object dapat menerima pesan, memproses data, mengirim,
menyimpan dan memanipulasi data. Beberapa object berinteraksi dengan saling
memberikan informasi satu terhadap yang lainnya. Masing-masing
object harus berisikan informasi mengenai dirinya sendiri dan dapat dihubungkan
dengan Object yang lain. Pemrograman berorientasi objek berbeda dengan
pemrograman prosedural yang hanya menggunakan satu halaman kebawah untuk
mengerjakan banyak perintah atau statement. Penggunaan pemrograman berorientasi
objek sangat benyak sekali, contoh : java, php, perl, c#, cobol, dan lainnya.
2.
Perbedaannya :
Dari pengertian pemrograman terstruktur dan
pemrograman berorientasi objek itu sendiri kita dapat menyimpulkan, apa
perbedaan dari pemrograman terstruktur dan pemrograman berorientasi objek itu.
Pemrograman berorientasi objek (Object-Oriented Programming atau OOP) merupakan
paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi
di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan
dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan,
memproses data, dan mengirim pesan ke objek lainnya, Sedangkan untuk
pemrograman terstruktur adalah kebalikan dari pemrograman berorientasi objek
yaitu sebuah cara pemrosesan data yang terstruktur dalam analisa, cara dan
penulisan pemrograman. Dikarenakan harus terstruktur sehingga dalam
pembuatannya antara satu line pemrograman dengan yang lainnya berhubungan. Konsep
utama dari Pemrograman Berbasis Objek terletak pada kondisi kode/line
pemrogramanannya dimana merupakan sebuah kesatuan modular. Untuk program yang
simpel/sederhana biasanya menggunakan pemrograman terstruktur karena masih
mudah dan tidak banyak dilakukan perubahan yang berarti, sedangkan untuk line
lebih dari 100 atau bisa dikatakan rumit, maka digunakan pemrograman
berorientasi objek. Pemrograman Terstruktur terdiri dari pemecahan masalah yang
besar menjadi masalah yang lebih kecil dan seterusnya, sedangkan untuk
pemrograman berorientasi objek terdiri dari pengkelompokan kode dengan data
yang mana setiap objek berfungsi secara independen sehingga untuk setiap
perubahan kode tidak tergantung pada kode yang lainnya, atau lebih dikenal
dengan modular. Terdapat juga perbedaan secara spesifik antara Pemrograman
Berorientasi Objek dengan Pemrograman Terstruktur, yaitu pada kelas dan objek.
Pada Pemrograman Terstruktur tidak terdapat kelas dan objek. Berdasarkan
penjelasan diatas, sangat jelas bahwa pemrograman tersktruktur unggul dalam
melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal
perawatannya tetapi permodelan ini lebih susah untuk dipahami oleh orang –
orang selain pembuat program itu sendiri (contohnya ketika dilakukan tracing
program).
3.
A. Objek
: Merupakan perwujudan dari
class, setiap object akan mempunyai attribute dan method yang dimiliki oleh
class-nya, contohnya: amir, ahmad, yani merupakan object dari class manusia.
Setiap object dapat berinteraksi dengan object lainnya meskipun berasal dari
class yang berbeda.
Definisi dan Gambaran Umum
Object
Object merupakan sesuatu yang memiliki identitas (nama), pada umumnya
juga memiliki data tentang dirinya maupun object lain dan mempunyai kemampuan
untuk melakukan sesuatu dan bisa bekerja sama dengan objek lainnya. Pada
dasarnya semua benda yang ada di dunia dapat dianggap sebagai sebuah object.
Rumah, mobil, sepeda motor, meja, dan komputer merupakan contoh-contoh object
yang ada di dunia nyata. Object adalah implementasi dari class. Secara
sederhananya, dapat dikatakan terdiri dari properti (atribut) dan method.
Pemahaman singkatnya :
• Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri.
• Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek.
Pemahaman singkatnya :
• Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri.
• Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek.
Karakteristik Object
Setiap object memiliki dua karakteristik yang utama, yaitu atribut
dan behavior. Atribut merupakan status object dan behavior merupakan tingkah
laku dari object tersebut.
Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya:
Contoh objek : Sepeda
– Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
– Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur.
Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya:
Contoh objek : Sepeda
– Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
– Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur.
B. Atribut : Definisi dan Gambaran Umum
Atribut
Atribut dari sebuah kelas
adalah variabel global yang dimiliki sebuah kelas, Atribut dapat memiliki hak
akses private, public maupun protected.
Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya.
Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya.
Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut.
Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya.
Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya.
Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut.
Karakteristik Atribut
Dalam class, atribut disebut
sebagai variabel. Atribut dapat membedakan antara satu object dengan object
yang lain. Sebagai contoh, pada class : mahasiswa, terdapat object mahasiswa si
A, dan object mahasiswa si B.
Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable.
Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya :
Pada Instance Variabel à tiap object memiliki instance variabel dan menyimpan nilainya tersendiri. Sedangkan pada Class Variabel à atribut yang dimiliki oleh semua object yang berasal dari class yang sama, serta semua object memiliki nilai class variabel yang sama. atribut yang dimiliki object dari class yang sama.
Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable.
Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya :
Pada Instance Variabel à tiap object memiliki instance variabel dan menyimpan nilainya tersendiri. Sedangkan pada Class Variabel à atribut yang dimiliki oleh semua object yang berasal dari class yang sama, serta semua object memiliki nilai class variabel yang sama. atribut yang dimiliki object dari class yang sama.
C. Class : Merupakan model yang berisi kumpulan
attribute dan method dalam suatu unit untuk suatu tujuan tertentu. Sebagai
contoh class manusia memiliki attribute berat, tinggi, usia kemudian memiliki
method makan, minum, tidur. Method dalam sebuah class dapat merubah attribute
yang dimiliki oleh class tersebut. Sebuah class merupakan dasar dari
modularitas dan struktur dalam pemrograman berorientasi object.
Definisi dan Gambaran Umum
Class
Class didefinisikan sebagai
sebuah blueprint(denah), atau prototipe, yang mendefiniskan variabel-variabel
dan metode-metode yang umum untuk semua objek dari n jenis tertentu (n
maksudnya jumlah tertentu). Sebuah kelas menyerupai sebuah struktur yang
merupakan tipe data sendiri, misalkan tipe data titik yang terdiri dari
koordinat x dan y. Bahasa Java telah menggunakan sebuah kelas untuk menyatakan
tipe data titik karena bahasa pemrograman Java merupakan bahasa pemrograman
berorientasi objek murni sehingga tidak mengenal struktur, melainkan mengenal
apa yang disebut dengan kelas.
Perbedaan sebuah kelas dengan
sebuah struktur adalah sebuah kelas dapat berdiri sendiri dan dapat digunakan
untuk berbagai keperluan kelas-kelas yang lain, sedangkan sebuah struktur tidak
dapat berdiri sendiri. Sebuah kelas lebih fleksibel untuk digunakan oleh kelas
lain tanpa harus membongkar kode program utama, sedangkan jika digunakan
struktur maka kode program harus dibongkar unuk disalin bagian strukturnya ke
kode program utama yang lain.
4.
A.
Encaptulation : Merupakan suatu mekanisme untuk menyembunyikan atau
memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari
luar sistem dan sekaligus menyederhanakan penggunaan sistem tersebut.
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
B. Inheritas :
Merupakan konsep mewariskan attribute dan method yang dimiliki oleh
sebuah class kepada class turunannya. Dengan konsep ini class yang dibuat cukup
mendefinisikan attribute dan method yang spesifik didalamnya, sedangkan
attribute dan method yang lebih umum akan didapatkan dari class yang menjadi
induknya.
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada.Objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada.Objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
C. Polymorphism : Merupakan konsep yang
memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu
object agar melakukan suatu tindakan yang mungkin secara prinsip sama tetapi
secara proses berbeda.
Model data berorientasi objek disebut dapat memberi fleksibilitas yang lebih, kemudahan mengubah program dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya selain itu pendekatan OOP lebih mudah dikembangkan dan dirawat.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, dengan metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim.
Model data berorientasi objek disebut dapat memberi fleksibilitas yang lebih, kemudahan mengubah program dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya selain itu pendekatan OOP lebih mudah dikembangkan dan dirawat.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, dengan metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim.
5.
A. Mencari Luas Segitiga dengan Java
Coding :
import java.util.Scanner;
public class
MencariLuasSegitiga {
static int alas;
static int tinggi;
static double luas;
static Scanner s;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
System.out.println("===PROGRAM
Luas Segitiga===");
s = new Scanner(System.in);
System.out.print("Masukkan alas =
");
alas=s.nextInt();
System.out.print("Masukan tinggi
= ");
tinggi=s.nextInt();
luas=(alas*tinggi)/2;
System.out.println("("+alas+"*"+tinggi+")/2="+luas);
}
}
HASIL :
run:
===PROGRAM Luas Segitiga===
Masukkan alas = 3
Masukan tinggi = 5
(3*5)/2=7.0
BUILD SUCCESSFUL (total time:
53 seconds)
B. Mencari angka ganjil dan genap
Coding :
import java.util.Scanner;
public class
MencariAngkaGanjilDanGenap {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Scanner s=new Scanner(System.in);
System.out.printf("Masukkan
bilangan anda : ");
int bilangan=s.nextInt();
if (bilangan % 2 == 1) {
System.out.printf(bilangan+"
Adalah bilangan GANJIL ");
}
else
System.out.printf(bilangan+"
Adalah bilangan GENAP ");
}
}
HASIL:
run:
Masukkan bilangan anda : 33
33
Adalah bilangan GANJIL BUILD
SUCCESSFUL (total time: 4 seconds)
C. Mencari agka
terbesar dari 3 buah angka
public class
MencariNilaiTerbesarDari3BuahNilai {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int angka1, angka2,
angka3, maks;
angka1 = 1000;
angka2 = 300;
angka3 = 20;
if (angka1>angka2 &&
angka1>angka3) {
maks = angka1;
} else if (angka2>angka1 &&
angka2>angka3){
maks = angka2;
} else{
maks = angka3;
}
System.out.println("Angka maksimum
adalah= "+maks);
}
}
HASILNYA:
run:
Angka maksimum
adalah= 1000
BUILD SUCCESSFUL
(total time: 0 seconds)
Pemrograman Berorientasi Objek
Reviewed by Lukman Syahrudin
on
12:04:00 AM
Rating:
No comments: