420 likes | 571 Views
Bahasa Pemrograman 2. Oleh : Safitri Juanita. Konsep Object-Oriented. Ide dasarnya adalah menggabungkan data dan fungsi menjadi satu kesatuan unit yang dikenal sebagai object. Yang harus diperhatikan :. Object Class Attribute Method Inheritance Encapsulation/data hiding Polymorphism.
E N D
Bahasa Pemrograman 2 Oleh : Safitri Juanita
Konsep Object-Oriented Ide dasarnya adalah menggabungkan data dan fungsi menjadi satu kesatuan unit yang dikenal sebagai object. BHS. PEMROGRAMAN 2 (PG022)
Yang harus diperhatikan : • Object • Class • Attribute • Method • Inheritance • Encapsulation/data hiding • Polymorphism BHS. PEMROGRAMAN 2 (PG022)
Object (Obyek) • Di real-world, tiap obyek memiliki ciri dan tingkah laku (behavior). • Misalnya : Obyek-obyek mhs, ciri bisa dilihat dari warna kulit, suara, jenis kelamin. Tingkah laku : berlari, menulis, makan. BHS. PEMROGRAMAN 2 (PG022)
Di programming, ciri dari tiap obyek diimplementasikan menjadi “attribute” (atau variabel) • Tingkah laku diimplementasikan menjadi “method” (atau fungsi) BHS. PEMROGRAMAN 2 (PG022)
Class (Kelas) • Di real-world, kita sering melihat banyak obyek dengan model yang sama. Obyek-obyek tersebut bisa memiliki perbedaan atau tidak. Misalnya : Buku, mahasiswa. • Class adalah wadah yang digunakan untuk membentuk obyek. • Objek adalah sesuatu yang memiliki data dan proses • Class menjelaskan seluruh data dan proses setiap objek BHS. PEMROGRAMAN 2 (PG022)
Contoh Class Nama class atribut Metoda/ method BHS. PEMROGRAMAN 2 (PG022)
Contoh Obyek BHS. PEMROGRAMAN 2 (PG022)
Person Budi Lusi Sri Contoh hubungan Antara Kelas dan Obyek Obyek = an instance of BHS. PEMROGRAMAN 2 (PG022)
Atribut dan Metode • Atribut adalah data atau field yang menentukan ciri dari suatu class / obyek. Bisa disebut juga data anggota. • Metode adalah fungsi yang dilakukan oleh class atau yang dikenakan terhadap class. Bisa disebut juga sebagai fungsi anggota (member function). BHS. PEMROGRAMAN 2 (PG022)
Inheritance (Pewarisan) • Dapat diartikan bahwa sebuah class dapat menggunakan kembali attribute dan method yang telah didefinisikan oleh class yang lain • Sifat dari suatu kelas diturunkan kepada kelas yang lain. • Superclass : class yang diturunkan ke kelas lain. • Subclass : class yang diturunkan dari kelas lain. Contoh : class “tabung” diturunkan dari kelas “lingkaran” BHS. PEMROGRAMAN 2 (PG022)
superclass Bidang Lingkaran Segi empat subclass Tabung Kubus Contoh inheritance BHS. PEMROGRAMAN 2 (PG022)
Encapsulation • Suatu mekanisme yang menggabungkan proses dan data ke dalam sebuah object BHS. PEMROGRAMAN 2 (PG022)
Polymorphism Dapat diartikan bahwa “pesan” yang sama akan diinterpretasikan berbeda oleh class yang berbeda BHS. PEMROGRAMAN 2 (PG022)
Pengenalan Lingkungan Java • Program Java akan melalui 5 tahap proses, yaitu : • Edit • Compile • Load • Verify • Execute BHS. PEMROGRAMAN 2 (PG022)
a. Edit • Menulis program java dengan menggunakan program editor seperti JCreator, Notepad, dll • Disimpan dengan ekstensi file .java • Misal : HelloWorld.java BHS. PEMROGRAMAN 2 (PG022)
b. Compile • Menggunakan perintah javac untuk meng-compile program java • Akan menghasilkan bytecode (instruksi-instruksi yg dimengerti oleh Java interpreter). • Contoh perintah untuk meng-compile program java : javac HelloWorld.java • Jika proses kompilasi benar, akan dihasilkan file dengan ekstensi .class, misal : HelloWorld.class BHS. PEMROGRAMAN 2 (PG022)
c. Load • Menempatkan program (.class) ke dalam memory sebelum dijalankan. • Dilakukan oleh class loader. • File .class dapat di-load dari penyimpanan di komputer kita atau dari jaringan/network (jaringan lokal atau internet). BHS. PEMROGRAMAN 2 (PG022)
d. Verify • Memastikan agar bytecode dalam file .class valid BHS. PEMROGRAMAN 2 (PG022)
e. Eksekusi • Menggunakan Java Interpreter • Membaca bytecode dan menerjemahkannya menjadi bahasa yang dimengerti oleh komputer (bahasa mesin). • Perintahnya adalah : java HelloWorld • Java Interpreter = Java Virtual Machine (JVM) BHS. PEMROGRAMAN 2 (PG022)
Java API Packages / Java Class Library Java menyediakan banyak class yang di kelompokkan ke dalam bermacam-macam kategori yang disebut Packages. Packages ini disebut sebagai Java Application Programming Interface (Java API) atau Java Class Library. BHS. PEMROGRAMAN 2 (PG022)
Contoh Packages : • Java.io (Java Input/Output packages). • Java.lang (Java Language packages, kita tdk perlu menggunakan perintah import pada saat ingin menggunakan class-class yg ada di dalamnya). • Javax.swing (Java Swing GUI Component packages). • Utk lebih jelasnya lihat di http://java.sun.com/javase/6/docs/api/ BHS. PEMROGRAMAN 2 (PG022)
Program Sederhana BHS. PEMROGRAMAN 2 (PG022)
1 // Fig. 2.1: Welcome1.java 2 // Text-printing program. Komentar / Comments • Komentar diawali dg tanda // • Komentar diabaikan selama proses eksekusi program • Sebagai dokumentasi atas kode program • Memudahkan pembacaan kode (code readability) • Traditional comments: /* ... */ • /* Ini ada adalah remark beberapa baris */ • Baris kosong • Membuat program lebih mudah dibaca • Baris kosong, spasi, dan tab adalah ‘white-space characters’ • Diabaikan oleh compiler BHS. PEMROGRAMAN 2 (PG022)
4 public class Welcome1 Catatan : • Awal pendeklarasian utk class Welcome1 • Sebuah program java minimal mempunyai 1 pendeklarasian class. • By convention (aturan tdk tertulis), semua nama class di Java dimulai dengan huruf besar dan huruf besar pada tiap katanya. Misal : class Welcome1, class HelloWorld, class HitungLembur. BHS. PEMROGRAMAN 2 (PG022)
Catatan lanjutan : • Java identifier • Sekumpulan karakter yang terdiri dari huruf, angka, underscores ( _ ) dan tanda dollar ( $ ) • Tdk boleh diawali dg angka, tdk boleh ada spasi • Contoh : Welcome1, $value, _value, button7 • 7button is invalid • Java bersifat case-sensitive. Sehingga AB dan Ab adalah berbeda. BHS. PEMROGRAMAN 2 (PG022)
Pada tiap aplikasi Java • Aplikasi mulai dieksekusi pada ‘main’ • Tanda kurung menandakan ‘main’ adalah method • Aplikasi Java terdiri dari 1 atau lbh method • Satu method hrs bernama ‘main’ • ‘void’ berarti ‘main’ tdk mengembalikan nilai • Kurawal kiri (brs 8) menandakan dimulainya pendeklarasian method • Diakhiri dg kurawal kanan } (brs 11) 7 public static void main( String args[] ) 8 { BHS. PEMROGRAMAN 2 (PG022)
9 System.out.println( "Welcome to Java Programming!" ); • Perintah utk mencetak sekumpulan karakter • String – sekumpulan karakter yg berada di antara tanda kutip ganda • System.out • Standard output object • Print ke command window (i.e., MS-DOS prompt) • Method System.out.println • Stlh mencetak, cursor akan berada di baris baru • Baris 9 ini disebut sebagai statement • Tiap statement harus diakhiri tanda semicolon ; BHS. PEMROGRAMAN 2 (PG022)
Contoh Program Lain : import java.util.Scanner; public class Addition2 { public static void main (String args[]) { Scanner input = new Scanner(System.in); int number1; int number2; int sum; System.out.print("Masukkan angka pertama : "); number1 = input.nextInt(); System.out.print("Masukkan angka kedua : "); number2 = input.nextInt(); sum = number1 + number2; System.out.println("Jumlahnya : "+sum); } } BHS. PEMROGRAMAN 2 (PG022)
Hasilnya : BHS. PEMROGRAMAN 2 (PG022)
Tipe Data BHS. PEMROGRAMAN 2 (PG022)
Real and Integer Expressions • Operand real menggunakan + - * / menghasilkan real Expression Result 27.3 + 8.4 35.7 7.0 – 10.0 -3.0 3.0 * 5.0 15.0 • Operand integer + - * / menghasilkan integer Expression Result 27 + 8 35 7 – 10 -3 3 * 5 15 BHS. PEMROGRAMAN 2 (PG022)
Type Casting • Konversi tipe data ke tipe data lain (untuk numeric) • Syntax-nya: • (NewDataType) (expression) • Examples: a,b,c,d : int dan x,y,z : double • average = (double) (a + b + c + d) / 4.0; • z = (double) (a + b); • a = (int) y; • x = (double) (a / b); • Jika terjadi konversi tipe data real ke integer maka akan terjadi pemotongan nilai real (i.e. bukan rounding/pembulatan) BHS. PEMROGRAMAN 2 (PG022)
Operator Matematika BHS. PEMROGRAMAN 2 (PG022)
Operator Presedence BHS. PEMROGRAMAN 2 (PG022)
Operator Increment dan Decrement Java mempunyai operator ++ dan – seperti dalam bahasa C public class Count { public static void main (String args[]) { for (int i=0; i<50; i++) { System.out.println(i); } } } public class Count { public static void main (String args[]) { for (int i=50; i>0; i--) { System.out.println(i); } } } BHS. PEMROGRAMAN 2 (PG022)
Operator Relasi BHS. PEMROGRAMAN 2 (PG022)
Operator Logika Operator && (AND) BHS. PEMROGRAMAN 2 (PG022)
Operator || (OR) BHS. PEMROGRAMAN 2 (PG022)
Operator Λ (XOR) BHS. PEMROGRAMAN 2 (PG022)
Operator ! (Negasi) BHS. PEMROGRAMAN 2 (PG022)