Pemrograman Berorientasi Objek (Object Oriented Programming)
description
Transcript of Pemrograman Berorientasi Objek (Object Oriented Programming)
UNIVERSITAS UNIVERSITAS BUDI LUHURBUDI LUHUR
FAKULTAS FAKULTAS TEKNOLOGI TEKNOLOGI INFORMASIINFORMASI
www.bl.ac.idwww.bl.ac.id
HAL : HAL : 11
Pemrograman Berorientasi Objek
(Object Oriented Programming)
Oleh :Indra, S.Kom
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 22GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Konsep Object-Oriented
Ide dasarnya adalah menggabungkan data dan fungsi menjadi satu kesatuan unit yang dikenal sebagai object.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 33
Analogi PBO (Object Oriented Programming)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 44
Background Java
• Pertama kali diluncurkan sebagai bahasa pemrograman umum (general purpose programming language).
• Dengan Visi pada awalnya untuk membuat piranti-piranti yang ada di rumah (small embedded customer device),
• Langkah yang diambil oleh Sun Microsystem adalah dengan membuat JDK (Java Development Kit) & JRE (Java Runtime Environment).
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 55
Komponen Dasar Java• The "JDK" is the Java Development Kit. I.e.,
the JDK is bundle of software that you can use to develop Java based software. The "JRE" is the Java Runtime Environment. I.e., the JRE is an implementation of the Java Virtual Machine which actually executes Java programs.
• Typically, each JDK contains one (or more) JRE's along with the various development tools like the Java source compilers, bundling and deployment tools, debuggers, development libraries, etc.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 66GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Yang harus diperhatikan :
• Object• Class• Attribute• Method• Inheritance• Encapsulation/data hiding• Polymorphism
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 77GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 88GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
• Di programming, ciri dari tiap obyek diimplementasikan menjadi “attribute” (atau variabel)
• Tingkah laku diimplementasikan menjadi “method” (atau fungsi)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 99GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1010GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Mahasiswa
NIM :Nama:
Menulis,Kuliah,Makan,
Contoh Class
Buku
No. Buku:Judul:
Dibaca,Disampul
Nama class
atribut
Metoda/method
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1111GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Mahasiswa
NIM : 0211500001Nama : Jack
Menulis,Kuliah,Makan,
Contoh Obyek
Buku
No.Buku : B001Judul : BP2
Dibaca, disampul
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1212GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Contoh hubungan Antara Kelas dan Obyek
Person
Budi Lusi Sri
Obyek = an instance of
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1313GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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).
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1414GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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”
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1515GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Contoh inheritance
Bidang
Lingkaran Segi empat
Tabung
Kubus
superclass
subclass
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1616GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Encapsulation
• Suatu mekanisme yang menggabungkan proses dan data ke dalam sebuah object
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1717GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Polymorphism
Dapat diartikan bahwa “pesan” yang sama akan diinterpretasikan berbeda oleh class yang berbeda
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1818GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Pengenalan Lingkungan Java
Program Java akan melalui 5 tahap proses, yaitu : Edit Compile Load Verify Execute
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 1919GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
a. Edit
• Menulis program java dengan menggunakan program editor seperti JCreator, Notepad, dll
• Disimpan dengan ekstensi file .java• Misal : HelloWorld.java
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2020GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2121GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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).
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2222GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
d. Verify
• Memastikan agar bytecode dalam file .class valid
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2323GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2424GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2525GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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/
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2626GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Program Sederhana 1 // Fig. 2.1: Welcome1.java
2 // Text-printing program.
3
4 public class Welcome1
5 {
6 // main method begins execution of Java application
7 public static void main( String args[] )
8 {
9 System.out.println( "Welcome to Java Programming!" );
10
11 } // end method main
12
13 } // end clazss Welcome1
Welcome to Java Programming!
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2727GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Komentar / Comments1 // Fig. 2.1: Welcome1.java
2 // Text-printing program.
• 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 kosongMembuat program lebih mudah dibacaBaris kosong, spasi, dan tab adalah ‘white-space characters’
Diabaikan oleh compiler
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2828GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
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.
4 public class Welcome1
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 2929GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3030GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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 {
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3131GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
• Perintah utk mencetak sekumpulan karakterString – sekumpulan karakter yg berada di
antara tanda kutip ganda• System.out
Standard output objectPrint 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 statementTiap statement harus diakhiri tanda semicolon ;
9 System.out.println( "Welcome to Java Programming!" );
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3232GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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);}
}
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3333GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Hasilnya :
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3434GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Tipe DataJava Stores Range
byte 8 bit integer -128 to 127
short 16 bit integer -32768 to 32767
int 32 bit integer -231 to 2.131 – 1
long 64 bit integer -263 to 263 – 1
float 32 bit floating pt 6 sig digits (10-46, 1038)
double 64 bit floating pt 15 sig digits (10-324, 10308)
char unicode character ‘\u0000’ to ‘\uFFFF’ (0 s/d 65535)
boolean boolean false, true
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3535GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Real and Integer Expressions• Operand real menggunakan + - * /
menghasilkan realExpression Result27.3 + 8.4 35.77.0 – 10.0 -3.03.0 * 5.0 15.0
• Operand integer + - * / menghasilkan integer Expression Result27 + 8 357 – 10 -33 * 5 15
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3636GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(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)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3737GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Operator Matematika
Operasi Operator Algebra
Expression Java
Expression
Penjumlahan + f + 7 f + 7
Pengurangan - p – c p – c
Perkalian * bm b * m
Pembagian / x/y atau x÷y x / y
Sisa Pembagian
% r mod s r % s
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3838GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Operator Presedence
Operator(s) Operation(s) Urutan Evaluasi / pengerjaan (precedence)
*
/
%
Perkalian
Pembagian
Sisa Pembagian
Dievaluasi pertama. Jika ada lbh dari 1 operator jenis ini, maka akan dievaluasi dari kiri ke kanan.
+
-
Penjumlahan
Pengurangan
Dievaluasi berikutnya. Jika ada lbh dari 1 operator jenis ini, maka akan dievaluasi dari kiri ke kanan.
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 3939GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4040GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Operator Increment dan Decrement
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); }}
}
Java mempunyai operator ++ dan – seperti dalam bahasa C
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4141GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Operator Relasi
Aljabar Standar Java Equality
atau Relational Opr
Java condition
Arti
Equality Oprt.
= == x == y x sama dg y
≠ != x != y x tdk sama dg y
Relational Opr.
> > x > y x lbh besar dr y
< < x < y x lbh kecil dr y
≥ >= x >= y x lbh bsr dr atau sama dg y
≤ <= x <= y X lbh kcl dr atau sama dg y
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4242GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Operator Logika
Expression1 Expression2 Expression1 &&
expression2
False False False
False True False
True False False
True True True
Operator && (AND)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4343GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Expression1 Expression2 Expression1 | |
expression2
False False False
False True True
True False True
True True True
Operator || (OR)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4444GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Expression1 Expression2 Expression1 Λ expression2
False False False
False True True
True False True
True True False
Operator Λ (XOR)
FAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHURFAKULTAS TEKNOLOGI INFORMASI - UNIVERSITAS BUDI LUHUR
HAL : HAL : 4545GENAP GENAP 2006/20072006/2007
BHS. PEMROGRAMAN 2 BHS. PEMROGRAMAN 2 (PG022)(PG022)
Expression !Expression
False True
True False
Operator ! (Negasi)