Rangkuman Modul Praktikum Pemrograman Berorientasi Objek

NAMA : Muhammad Shihabbuddin
Kelas : Informatika 3/B1
NIM : 181080200293
KELOMPOK : 14


MODUL I
ELEMEN DASAR JAVA

PENDAHULUAN

Pada pokok bahasan ini berisi penjelasan disertai contoh mengenai pengenalan type data, veriabel, dan identitas array yang menjadi pemahaman dasar bagi mahasiswa sebelum mempelajari Pemrograman Berorienatasi Objek dengan membuat program java sederhana menggunakan elemen dasar tersebut, diharapkan mahasiswa dapat :

a.         Memahami instalasi java
b.         Mengenali tipe data, variable dan identitas dan array
c.         Menggunakan elemen dasar java pada pembuatan program
d.        Membuat program java sederhana dengan menggunakan elemen dasar

PENYAJIAN (TUTORIAL)

A.  Instalasi Java
Instal aplikasi Java SDK pada komputer. Berikut langkah-langkah untuk instalasi java :
a.         Jalankan installer Java SDK
b.         Ikuti semua proses sampai selesai
c.         Set variabel system path pada komputer.

Cobalah Java Anda, buka command line
   Ketikkan java<<enter>>
   Ketikkan javac<<enter>>

Kalau kedua sintaks di atas tidak menemukan pesan error, maka instalasi berhasil

B.  Konsep Dasar Pemrograman Berorientasi Objek
Java adalah salah satu bahasa pemograman yang menggunakan paradigma pemograman berorientasi obyek.Pemograman berorientasi obyek menjadikan object dan class sebagai konsep sentralnya.

C.  Konsep Dasar Variabel
Variabel adalah satuan yang dipakai oleh program sebagai basis untuk penyimpanan data.Penggunaan variable harus terlebih dahulu dideklarasikan nama dan tipenya.
Tipe dasar (primitive) dalam java adalah sebagai berikut ;
Short
Tipe variable short adalah bilangan bulat 16 bit yang mempunyai jangkauan nilai dari -215 sampai dengan 215-1 atau dari -32768 sampai dengan  ±32767.

Long
Tipe variable long adalah bilangan bulat 64 bit dengan jangkauan nilai dari -263sampai dengan 263-1.

Byte
Type variable byte adalahbilanganbulat 8 bit yang mempunyai jangkauan nilai dari 27sampai dengan 27-1 ataudari -128 sampai dengan +127.

Float
Float adalah bilangan real (pecahan, dengan format floating point yang menggunakan tempat penyimpanan 32 bit.Tipe float mempunyai jangkaun nilai dari 3.4e-038 sampai dengan 3.4e+038. Ketelitian float sampai 10 angka dibelakang koma.
Contoh :     Float f1 ;
                   Float f2 = 0.13f;
                   Float f3 = 0.34f;
Perhatikan bahwa angka float ditambah suffix huruf f yang berarti float. Hal ini diperlukan karena notasi default untuk tipe variable double.
Double
Dobel adalah bilangan real (pecahan) dengan presisi 2 kali lebih baik dari variable float. Dobel membutuhkan 64 bit untuk penyimpanannya yang mempunyai jangkauan nilai dari 1.7e-308 sampai dengan 1.7e+308.

Char
Tipe variable char menyimpan kode Unicode (karakter internasional), karena itu membutuhkan 16 bit
Contoh:
       Char c;
Char c1=’c’;
Char c5=’\t’;
Boolean
Variable Boolean berisi dua nilai, yaitu true dan false.Variabel Boolean
dapat diperoleh dari operasi logika seperti perbandingan dua bilangan,
perbandingan dua string, dan lain – lain;

Casting
Casting adalah teknik konversi suatu data tipe ke data tipe yang lain secara
eksplisit. Yang menerangkan kepada compiler bahwa terjadi perubahan tipe variable, sehingga hasilnya harus dikonversi ke tipe variable tersebut.
Contoh :
Int I;
Double d;
       Byte b;
       I = 250;
       D = I; // tidak terjadi kesalahan, penyesuain otomatis
B = I; // terjadi kesalahan, tipe tidak compatible
       B = (byte); //tidak terjadi kesalahan, casting dari integer ke byte



D.  Konsep Dasar Array
Array adalah sekumpulan data yang sama tipenya. Isi array dapat diakses melalui index yang dimulai dari 0 sampai dengan jumlah_elemen_array-i.
Tipe_variabel nama_array[];

Contoh
IntMyArr[];
E.  Kerangaka Program Java
Progam dalam java dibagi- bagi menjadi class-class.Oleh karena itu program dalam java dimulai dengan kata kunci class atau public class.



MODUL II
OPERATOR, CONTROL FLOW DAN STRING

PENDAHULUAN

Pada pokok bahasan ini akan dibahass mengenai pendeklarasian variable, baik instance variable, class variable, maupun local variable, serta membahas fungus dari masing – masing symbol operator dan control flow. Sehingga setelah mempelajari bab ini diharapkan mahasiswa mampu :
a.       Mendeklarasikan instance variable, class variable , maupun local variable
b.      Mengakses instance variable, class variable, mupun local variable
c.       Memahami fungsi dari masing – masing symbol operator
d.      Memahami control flow
e.       Mahasiswa mampu membuat program yang berkaitan dengan string
f.       Mahasiswa mampu memahami pinsip penggunaaan String

PENYAJIAN (TUTORIAL)

Operator dan Control Flow adalah jantung dari program Control Flow mempunyai kemampuan untuk mengendalikan jalan dari program. Tanpa Operator dan Control Flow, program tidak akan mampu melakukan banyak hal. Ada beberapa jenis Operator dan Control Flow dalam Java, yaitu:
1.      Aritmatika Operator
Java mempunyai operator aritmatika seperti + (penjumlahan), - (pengurangan) ,*(perkalian) , / (pembagian) dan % (modulo). Operator – operator ini berlaku seperti dalam operasi aritmatika
2.      Logika Operator
Ada tiga logika Operator dalam java yaitu:

            &&      Logika /nd
            ||           LogikaOr
             |          LogikaNot

Ketiga operator tersebut dioperasikan terhadap Boolean data tipe yang menghasilkan bolean data type juga (true atau false)

3.      Bit per bit operator
Variabel bertipe long, int, short, byte dan char dapat mempunyai operator yang dioperasikan langsung kesusunan binernya (bit atau bit).

Tabel 2.1 Tabel Bit Per Bit Operator
Operator
Nama
Keterangan
~
NOT
Mengubah 0 menjadi 1 dan 1 menjadi 0
&
AND
1 & 1 = 1 selain itu hasilnya selalu 0
|
OR
0|0 = 0 selain itu hasilnya selalu 1
^
XOR
0^0 = 0, 1^1 = 0 selain itu hasilnya 1
>> 
SHIFT RIGT
Dorong 1 bit kekanan termasuk tanda minus
>>> 
SHIFT RIGT
Dorong 1 bit ke kanan isi bit paling kiri dengan 0
<< 
SHIFT LEFT
Dorong 1 bit kekiri
Seperti halnya aritmatika operator, Bit per bit operator juga bias dilakukan
Penyederhanaan penulisannya.
4.      Relasional
Operator relasional digunakan untuk membandingkan dua nilai. Hasil dari perbandingan tersebut adalah data tipe Boolean (true atau false).
Tabel 2.2 Tabel Operator Relasional
Operator
Keterangan
> 
Lebih Besar
< 
Lebih kecil
>=
Lebih besar atau sama dengan
<=
Lebih keci latau sama dengan
!=
Tidak sama dengan
= =
Sama dengan

Tipe variable di java seperti short, int, long, float, double, Boolean, dan character dapat dibandingkan satu dengan yang lainnya .
5.      Prioritas
Setiap operator mempunyai prioritas sendiri – sendiri, sehingga perhitungan matematika dilakukan sesuai prioritasnya .Lihat contoh dibawah ini :
            C = a + b*d;
Akan dijalankan sesuai prioritas yaitu *,+,=
Dibawah ini diberikan table prioritas dari operator, urutan prioritas dari atas ke bawah.Operator yang sama prioritasnya akan dioperasikan dari kanan ke kiri.

Tabel 2.3 Tabel Operator Prioritas
Operator
( ) [ ]
++ -- ~!
*/ %
+ -
>>>>><< 
>>=  <<=
== ! =
&
^
|
&&
||
?:
=

6.      Pernyataan if
Pernyataan if adalah control flow yang paling sederhana Pernyataan ini mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan akan dijalankan. Sebaliknya computer akan melompati blok pernyataan tersebut.
7.      Pernyataan if-else
Pernyataan if-else mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan dijalankan. Sebaliknya computer akan menjalankan blok pernyataan yang lain.
8.      Pernyataan switch, case dan break
Switch digunakan untuk percabangan (seleksi) lebih dari dua. Ini digunakan untuk menghindari pergunaan if-else yang berlapis-lapis.
9.      Pengulangan(Loop)
Pengulangan dengan while
Alur program blok while akan dilakukan berulang-berulang selama ekspresi benar (true) Sintaks dari pengulangan while adalah sbb


MODUL III
CLASS

PENDAHULUAN
Pada pokok bahasan ini akan dibahasa mengenai objek dan class, serta penggunaannya dalam sebuah program java sederhana. Setelah mempelajari materi ini diharapkan mahasiswa mampu untuk :
a.       Mengetahui pengertian dari objek dan class
b.      Dapat membuat program sederhana dari java dengan menggunakan objek dan class

PENYAJIAN (TUTORIAL)
Class merupakan bagian pokok dari Pemrograman Berorientasi Obyek (Object Oriented Programming). Class merupakan cara merakit data-data dan menentukan semua metode yang diperlukan untuk mengakses, menggunakan dan mengubah data-data tersebut. Dalam java class juga bisa dianggap sebagai type dari object.
Setiap class memiliki dua hal utama. Yang pertama adalah yang kita sebut state/atribut/property. State dalam obyek tidak lain adalah nilai dari setiap variable. Bagian yang kedua adalah tool atau method yang menentukan utility yang dimiliki oleh class.

1. Pendeklarasian class
modifier menentukan bagaimana class dapat ditangani pada fase development berikutnya. Ada tiga jenis modifier dalam class yaitu public, final, abstract dan friendly.
2. Konstruktur
Konstruktur adalah method dengan property yang unik dan untuk keperluan inialisasi pada saat obyek diciptakan. Jadi konstruktur digunakan memberikan niali kepada attribute tertentu pada saat obyek diciptakan.Kontruktor didefinisikan dengan nama yang sama dengan nama class. Konstruktor tidak perlu return_type sebab konstruktur secara aktual dipanggil sebagai method. Konstruktur ini dipanggil pada saat kita memberikan perintah new.
3. Inherintance (Pewarisan)
Inheritance (Pewarisan) adalah suatu mekanisme yang memungkinkan satu class mewarisi (memiliki) attribute dan method dari class lain. Mekanisme pewarisan ini diperlukan untuk mengembangkan class-class yang sudah ada tanpa harus membuka source code dari class-class tersebut. Class yang mewarisi disebut subclass sedangkan calss yang diwarisi disebut super class. Pewarisan class dalam java menggunakan sintaks:
            modifier<NamaSubClass>extends<NamaSuperCalss> {
            }

4. Kata Kunci this
this adalah referensi yang menunjuk pada obyek aktual. Nilai this ini menunjukkan bahwa obyek yang dimaksud adalah obyek yang sedang aktif itu sendiri. Contoh penggunaan dari this adalah sbb:

5. Overriding Method
Overriding method adalah suatu mekanisme pewarisan class di mana subclass mendefinisikan ulang satu atau lebih method (fungsi) yang ada di supper class. Dalam overriding ini subclass bisa mendefinisikan method (fungsi) yang di-override dengan fungsi yang baru sama sekali, atau menambahi method (fungsi) yang di-override yang sudah ada dengan fungsinal-fungsinal yang lain. Contoh class yang menggunakan mekanisme overriding :

  

POKOK BAHASAN IV
THREADS

PENDAHULUAN
Pada pokok bahasan ini akan dibahas mengenai threads. Setelah mempelajari bab ini diharapkan mahasiswa mampu :
a.       Mahasiswa dapat membuat treads dengan menggunakan pemrograman java
b.      Mahasiswa dapat menjelaskan kegunaan treads

PENYAJIAN (TUTORIAL)
Property unik dari java adalah bahwa Java memberi suport adanya threads. Threads memperbolehkan kita melakukan banyak hal pada waktu yang bersamaan. Threads adalah komponen java yang memungkinkan kita untuk membuat program yang bersifat multitasking programming. Sebenarnya setiap program dalam java selalu menggunakan paling tidak satu thread
Kita bisa membuat aplikasi dan class berjalan dalam threads yang terpisah dengan dua cara, yaitu :
·         Mengembangkan dari class Thread (extending class Thread)
·         Mengimplementasikan Runnable interface

Mengembangkan Class Thread
Dengan menggunakan extends Thread, mekanisme Thread dapat diaplikasikan dengan membuat fungsi run ( )
Untuk melihat concurrency (multitasking) pada program tersebut tambahkan method sleep ( ) untuk actual Thread (current Thread). Method sleep ( ) hanya dapat dilakukan dengan menangkap sinyal
Method yang berhubungan dengan Thread
start( )
Mengaktifkan Thread Obyek Thread kemudian akan menjalankan method run( ).
stop( )
Menghentikan Thread yang sedang aktif.
sleep( int delta)
Menunda aktifitas Thread untuk delta millisecond.

Mengimplementasikan Runnable interface
Pada contoh di atas Thread digunakan dengan mengembangkan class Thread, yang mana berarti bahwa Subclass Thread hanya dapat mewarisi sifat-sifat dari Thread. Pengikatan Class ini dapat dihindari dengan menggunakan konsep interface. Dengan mengimplementasikan Runnable interface. Interface Runnable ini hanya berisi satu method yang harus diimplementasikan, yaitu run().
Konstruktor Thread adalah :
            Thread(Runnable ThreadObject)
Atau
            Thread(Runnable ThreadObject, String nama Thread)
ThreadObject pada contoh di atas adalah this, yang merupakan Obyek itu sendiri yang mengimplementasikan Runnable.
            Method is Active( ) akan memberikan nilai true jika Thread actual aktif, dan false jika tidak aktif.



POKOK BAHASAN V
 EXCEPTION (EKSEPSI)

PENDAHULUAN
Setelah mempelajari bab ini diharapkan mahasiswa mampu :
a.    Memahami perbedaan  antara  kode  program  java  yang memanfaatkan Exception Handling dan yang tidak memanfatkan.
b.    Mahasiswa  mampu  mengimplementasikan kata  kunci  try,  catch,  dan  throw dan throws.

PENYAJIAN (TUTORIAL)
Eksepsi adalah mekanisme yang memungkinkan program untuk menangkap kondisi-kondisi tertentu yang membutuhkan penanganan khusus. Eksepsi dapat berupa kesalahan yang terjadi dalam program pada saat run time. Format eksepsi adalah :
Try {
                        // blok program
                        . . . . . .
} catch (EksepsiTipe1 e) {
                        // blok program untuk EksepsiTipe1
                        . . . . . .
} catch (EksepsiTipe2 e) {
                        // blok program untuk EksepsiTipe2
                        . . . . . .
} catch (EksepsiTipe3 e) {
                        // blok program untuk EksepsiTipe3
                        . . . . . .
} finally {
                        // blok program
                        . . . . . . }
try menyatakan bahwa dalam blok try dapat terjadi suatu ekspresi dan bila ekspresi terjadi, maka aktifkan program yang berada dalam kelompok (blok) catch sesuai dengan tipe ekspresinya.
Object e dari tipe ekspresi dapat digunakan sebagai referensi penanganan eksepsi aktual.  
finally menyatakan bahwa apapun jenis tipe ekspresinya, maka program dalam blok ini harus tetap dijalankan.
Dengan menangkap eksepsi program tidak langsung berhenti dan melaporkan kesalahan tersebut, melainkan membelokkan dengan program pengaman tertentu.
Pada saat run time, jika java menemukan kesalahan dan melempar pesan ke program. Dengan pesan ini, program akan melakukan suatu aksi tertentu. Mekanisme melempar ini disebut juga sebagai throw, alur program akan dihentikan, kemudian program pengendali (exception handling) akan diaktifkan.
throw
Throw digunakan secara eksplisit untuk membuang sebuah eksepsi. Contoh berikutnya, TestThrow mendefinisikan Obyek Eksepsi “NullPointerException” pada sebuah variabel t.
Dengan instruksi throw, program Eksepsi untuk kemudian ditangkap oleh instruksi catch. Namun tentunya yang ditangkap harus sesuai degan tipe eksepsi yang dilemparkan. Dalam hal ini program
throws
Eksepsi selalu ditangkap dengan catch pada blok dimana eksepsi tersebut dilempar. Tanpa catch, program tidak akan dikompilasi. Program dibawah ini menghilangkan try dan catch pada subroutine demo( ), namun dengan menggunakan tambahan kata kunci throws Exception.
Tabel 6.1 Common Jaxa Exceptions
Exceptions
Description
Arithmeticexception
Disebabkan oleh error secara matematika seperti pembagian dengan nol
ArrayIndexOutOfBouns Exception
Disebabkan oleh array index yang salah
ArrayStoreException
Disebabkan ketika program mencoba menyimpan file data yang salah
FileNotFoundException
Disebabkan oleh usaha mengakses file yang tidak ada
IOException
Disebabkan oleh general I/O failures, seperti kegagalan membaca file
NullPointException
Disebabkan oleh mereferensi obyek null
NumberFormatException
Disebabkan ketika konversi antara string dan bilangan gagal
OutOfMemoryException
Disebabkan ketika tidak cukup memory untuk alokasi obyek
SecurityException
Disebabkan ketika sebuah applet mencoba melakukan aksi yang tidak diperbolehkan oleh setting security browser
StackOverflowException
Disebabkan ketika sistem run melebihi kapasitas stack
StringIndexOutOfBoundsException
Disebabkan ketika program mencoba mengakses posisi karakter yang tidak ada di dalam string




POKOK BAHASAN VI
 JAVA GRAPHICAL USER INTERFACE

TUJUAN
1.        Mahasiswa memahami dan menguasai pembuatan java GUI
2.        Mahasiswa memahami konsep dasar pembuatan java GUI menggunakan Swing
3.        Mahasiswa memahami Komponen dasar user interface dengan swing

PENYAJIAN(TUTORIAL)
Graphical User Interface
Graphical User Interface merupakan antar muka grafis yang memfasilitasi interaksi antara pengguna dengan program aplikasi.  Salah satu komponen dalam bahasa pemrograman Java untuk membangun GUI adalah Swing. Komponen ini didefinisikan di dalam paket javax.swing. Swing diturunkan dari Abstract Windowing Toolkit dalam paket java.awt. Hirarki dari komponen Swing adalah :
java.swing.Jcomponent à java.awt.Container  à  java.awt.Component à Java.Lang. Object
JComponent adalah superclass dari semua komponen Swing. Sebagian besar fungsionalitas komponen diturunkan dari superclass ini. Beberapa komponen utama dalam GUI adalah:
1.        Containers: merupakan wadah yang berfungsi untuk menempatkan komponen-komponen lain di dalamnya.
2.        Canvas.: merupakan komponen GUI yang berfungsi untuk menampilkan gambar atau untuk membuat program grafis. Dengan canvas, kita bisa menggambar berbagai bentuk seperti lingkaran, segitiga, dll.
3.        User Interface (UI) components: contohnya adalah buttons, list, simple popup menus, check boxes, text fields, dan elemen lain
4.        Komponen pembentuk window: seperti frames, menu bars, windows, dan dialog boxes.
  
Komponen-komponen Dasar User Interface dengan Swing
Berikut adalah beberapa komponen dasar antarmuka pengguna (user interface) yang disediakan oleh Swing:
1.        Top level containers: adalah container dasar untuk meletakkan komponen-komponen lain. Contohnya adalah JFrame, JDialog, dll.
2.        Intermediate level containers: merupakan container perantara. Umumnya digunakan hanya untuk meletakkan atau mengelompokkan komponen-komponen yang digunakan, baik itu container atau berupa atomic component. Contoh dari Intermediate level container adalah JPanel (panel).
3.        Atomic component: merupakan komponen yang memiliki fungsi khusus. Umumnya pengguna langsusng berinteraksi dengan komponen ini. Contohnya adalah JButton (tombol), JLabel (label), JTextField, JTextArea (area untuk menulis teks), dll.
4.        Layout Manager Berfungsi untuk mengatur bagaiman tata letak/posisi dari komponen yang akan diletakkan, satu sama lain di dalam suatu container. Secara default ada 6 buah layout : BorderLayout, BoxLayout, FlowLayout, CardLayout, GridBagLayout & GridLayout
5.        Event Handling : Menangani event yang dilakukan oleh user seperti menekan tombol, memperbesar atau memperkecil ukuran frame, mengklik mouse, mengetik sesuatu dengan keyboard, dll.
Konstruktor untuk membentuk JFrame adalah JFrame() atau JFrame(String NamaFrame). Salah satu method yang sering digunakan di kelas JFrame adalah setDefaultCloseOperation(int ops). Method ini berfungsi untuk mengatur apa yang akan dilakukan oleh program ketika tombil close di klik. Parameter method tersebut di antaranya adalah:
1.        JFrame.DO_NOTHING_ON_CLOSE: tidak ada satu aktivitas pun yang dilakukan secara otomatis apabila frame ditutup.
2.        JFrame.HIDE_ON_CLOSE: frame hanya disembunyikan, namun secara fisik frame masih ada di memori sehingga dapat dimunculkan kembali. Merupakan aktivitas default.
3.        JFrame.DISPOSE_ON_CLOSE: mengilangkan tampilan frame dari layar, menghilangkannya dari memori, dan membebaskan resource yang dipakai.
4.        JFrame.EXIT_ON_CLOSE: menghentikan eksekusi program.

Top level container yang lain adalah JDialog. Berbeda dengan JFrame, JDialog tidak dibuat berdiri sendiri, melainkan dibuat bersama-sama dengan frame sebagai parent-nya. Jika frame parent-nya ditutup, maka dialog akan dihapus dari memori. Kemunculan dialog akan membuat semua input terhadap frame parent-nya akan terblokir sampai dialog tersebut ditutup.

Layout Management
Untuk mengatur layout dari setiap komponen-komponen GUI yang diletakkan pada container, digunakan layout manager.Setiap pane secara default pasti memiliki layout manager. Jika ingin mengubah layout-nya, gunakan  void setLayout(LayoutManager mgr) Java menyediakan 6 buah class standar yang dapat digunakan sebagai layout manager yang terdapat dalam package java.awt, yaitu
1.      FlowLayout,
2.      GridLayout
3.      BorderLayout
4.      CardLayout
5.      GridBagLayout
6.      BoxLayout 

Komentar

Postingan populer dari blog ini

Rangkuman Praktikum Rekayasa Perangkat Lunak