PERTEMUAN 02 PENGANTAR BAHASA PEMROGRAMAN JAVA Pemrograman Dasar
PERTEMUAN 02 PENGANTAR BAHASA PEMROGRAMAN JAVA Pemrograman Dasar [PTI-5001] 2012 1
LEARNING OUTCOMES Pada akhir pertemuan, diharapkan mahasiswa mampu : � Mampu menjelaskan elemen dan struktur bahasa pemrograman Java dan mampu menulis program komputer sederhana dengan Java 2
OUTLINE MATERI Pengantar Bahasa Pemrograman Java � Sejarah Bahasa Pemrograman Java � Struktur Program dan Komentar � Karakter, � Literal, Identifier, Keyword Tipe Data, Konstanta, Variabel 3
SEJARAH BAHASA PEMROGRAMAN JAVA � Dikembangkan oleh tim • Pemimpin: James Gosling • Company: Sun Microsystem � Agustus 1991, bernama Oak � Januari 1995, berganti nama Java � Menjanjikan aplikasi berbasis “Write Once, Run Anywhere (WORA)” � Dapat dijalankan di web browser dengan teknologi Applet 4
MENGAPA MEMAKAI JAVA ? 1. Bahasa Sederhana, tidak mendukung: • • Manipulasi pointer secara explisit Casting tipe data implisit Struktur atau union Operator Overloading Template Header files Multiple inheritance 2. Berorientasi Objek 3. Bahasa Statically Typed 4. Bahasa Dikompilasi 5
MENGAPA MEMAKAI JAVA ? 5. Bahasa yang aman 6. Bebas terhadap platform (Write One, Run Aniwhere/WORA) 7. Bahasa Multithreading 8. Bahasa yang didukung Garbage Collector 9. Bahasa yang tegar 10. Bahasa yang mampu diperluas 6
Application Program Interface (API) � Kumpulan predefined classes dan interfaces untuk mengembangkan program Java � 3 edisi Java API: • Java 2 Standard Edition (J 2 SE) �Aplikasi client-side, applet • Java 2 Enterprise Edition (J 2 EE) �Servlet, JSP • Java 2 Micro Edition (J 2 ME) �Cell phone 7
Java Development Toolkit (JDK) � Sekumpulan program terpisah untuk mengembangkan dan menguji program Java. � Program pada JDK yang sering digunakan: • Kompiler: javac • • • �Mengkompilasi souce code (. java) menjadi bytecode (. class) Interpreter: java �Mengeksekusi bytecode (. class) menjadi aplikasi Debugger: jdb �Seperti interpreter, tetapi mampu men-debug aplikasi Penampil applet: appletviewer �Menampilkan applet Dokumentasi: javadoc �Mengkonversi source code (. java) menjadi dokumentasi (. html) Kompresi: jar �Menghasilkan kompresi (. jar) dari bytecode (. class) dan file pendukung lain (seperti gambar, suara, video) 8
Java Development Tools � Java Development Tools, aplikasi berbasiskan IDE (integrated development environment) untuk membuat program Java dengan cepat • • • JBuilder by Borland (www. borland. com) Net. Beans Open Source by Sun (www. netbeans. org) Eclipse Open Source by IBM (www. eclipse. org) Code Warrior by Metrowerks (www. metrowerks. com) Text. Pad Editor (www. textpad. com) JCreator LE (www. jcreator. com) JEdit (www. jedit. org) JGrasp (www. jgrasp. org) Blue. J (www. bluej. org) Dr. Java (http: //drjava. sourceforge. net) 9
Java Runtime Environment (JRE) � Software yang diperlukan untuk menjalankan aplikasi berplatform Java � Java Virtual Machine (JVM): sekumpulan program untuk mengeksekusi java bytecode agar jalan pada platformnya � Java Bytecode: Sekumpulan instruksi yang dieksekusi oleh JVM. Panjangnya sebesar 1 byte per instruksi 10
JAVA PLATFORM 11
STRUKTUR PROGRAM JAVA 3 1 2 4 3 6 1 2 3 4 5 6 5 Deklarasi class Pembuka blok Komentar Main Method Statement/Instruksi-program Penutup Blok 12
STRUKTUR PROGRAM � Program Java yang dibuat harus selalu diakhiri dengan ekstensi file. java. � Nama File harus sama dengan nama class public-nya � Baris 4, mengawali definisi kelas bernama: Hello. World. • Kata kunci public disebut sebagai access modifier • Kata kunci class untuk mendefinisikan kelas dari objek di java, yang merupakan wadah logik program dari sekumpulan data dan metode. • Setelah kata-kunci class, dituliskan nama kelas menggunakan aturan umum penulisan identifier. Konvensi nama kelas adalah kata benda dengan huruf kapital diawal kata yang berarti. � Komentar dapat ditulis sebagai penjelasan pada kode program 13
STRUKTUR PROGRAM � Baris 6, penulisan metode main(), dijalankan pertama kali dan penulisannya harus berupa: public static void main(String[] args){ } • public berarti metode dapat dipanggil dari manapun. • static berarti sama untuk semua instan kelas • void berarti tidak mengembalikan nilai � Baris 8, merupakan perintah untuk menampilkan teks: Hello Word 14
KOMENTAR Komentar tidak dieksekusi dalam program dan tidak menambah ukuran dari bytecodes. � Tiga macam komentar di java: � No. Jenis Komentar Penggunaan 1. /* …komentar… */ Semua karakter yang berada di antara /* dan */ akan diabaikan dan tidak dieksekusi. 2. // …komentar Semua karakter setelah // hingga akhir baris akan diabaikan dan tidak dieksekusi. /**…komentar…*/ Serupa dengan /*…*/, kecuali bahwa komentar akan digunakan oleh tool javadoc untuk membuat dokumentasi otomatis. 3. 15
KARAKTER � Program Java ditulis menggunakan subset karakter Unicode yaitu: �Huruf besar A. . Z �Huruf kecil a. . z �Digit 0. . 9 �Karakter khusus seperti ‘!’ , ‘&’, ‘+’, ‘’, ‘_’ dan sebagainya. �Kode kontrol (seperti: formfeed dan newline) � Unicode tidak hanya huruf latin, melainkan juga digunakan huruf-huruf bangsa lain, seperti: Jepang, Korea, German, dan bahkan Bengali. Memori yang digunakan 2 byte (16 bit). 16
KEYWORD � Keywords adalah identifier khusus dan tidak dibolehkan digunakan untuk identifier lain. � Keyword di Java abstract continue for new switch assert *** default goto * package synchronized boolean break byte case catch char class const* do double else enum**** if implements import instanceof interface long native private protected public return short static Strictfp** super this throws transient try void volatile while extends finally float * Tidak digunakan ** Ditambahkan pada 1. 2 *** Ditambahkan pada 1. 4 **** Ditambahkan pada 5. 0 17
IDENTIFIER � Nama berbagai elemen program seperti nama variabel, metode, kelas, keyword dsb � Karakter pertama harus berupa huruf atau garis bawah(underscore) _ atau tanda $. Dianjurkan tidak menggunakan _ atau $. � Karakter kedua dan seterusnya dapat berupa huruf atau angka. � Huruf besar dianggap berbeda dengan huruf kecil (case sensitive) � Panjang maksimum bebas. � Tidak boleh menggunakan keyword (misal for, while, dll. ) � Contoh identifier : nama, x 1, total, cubic, nama. Pegawai � Contoh identifier yang salah: 1 kali, int 18
LITERAL � Literal adalah nilai data yang dituliskan pada kode sumber (program). � Terdapat 1. 2. 3. 4. 5. lima macam literal di Java, yaitu: Integer Floating Point Boolean Character String 19
LITERAL INTEGER � Literal integer atau bilangan bulat dapat direpresentasikan dalam bentuk desimal (berbasis 10), oktal (berbasis 8) dan heksadesimal (berbasis 16). Hanya literal desimal yang boleh diberi tanda + (positip) dan – (negatip). � Bentuk oktal ditandai dengan angka 0 diawal. � Bentuk heksadesimal diawali dengan 0 x atau 0 X. 20
LITERAL INTEGER � Contoh literal integer: Literal Keterangan 75 Bilangan desimal 175 (basis 10) 075 Bilangan oktal 175 (berbasis 8) = 61 desimal 0 x 75 atau 0 X 75 Bilangan heksa 75 (berbasis 16) = 117 desimal -75 Minus 75 desimal +75 Positip 75 desimal -075 Salah karena oktal tak boleh bertanda (- atau +) +0 x 75 Salah karena heksa tak boleh bertanda (- atau +) 21
LITERAL FLOATING POINT � Literal floating point (bertitik desimal) merepresentasikan bilangan desimal yang mempunyai titik desimal (bagian pecahan), misal: 7. 4567 � Literal floating point, boleh bertanda (+ atau -) maupun tanpa tanda (positip). Misal: +7. 4567 atau -7. 4567 atau 7. 4567 � Penulisan literal floating point dapat menggunakan notasi standart maupun ilmiah (scientific). � Default floating point bertipe double (64 bit). Bila diinginkan bertipe float (32 bit) harus ditambahkan simbol horuf f atau F diakhir bilangan, misalkan: 7. 4567 f atau 7. 4567 F. 22
LITERAL FLOATING POINT � Contoh Literal floating point: Literal Keterangan 0. 75 Berarti: 0, 75 atau 75/100 +. 1 Berarti: +0, 1 atau 1/10 -0. 9876 Berarti: minus 0, 9876 2. 0 e 2 atau 2 e 2 Berarti: 2 x 102 2 E+25 Berarti: 2 x 1025 -75 e-011 Berarti: -75 x 10 -11 +75. E 25 F Berarti: +75 x 1025 bertipe float (32 bit). 23
LITERAL KARAKTER � Literal karakter direpresentasikan sebagai karakter Unicode tunggal dan dituliskan berupa karakter tunggal yang diapit dengan tanda petik tunggal (‘ ‘). � Contoh Literal Karakter: Literal Keterangan ‘A’ Berarti: karakter huruf A kapital. ‘a’ Berarti: karakter huruf a standart. ‘ 8’ Berarti: karakter angka 8 dan bukan angka 8. ‘#’ Berarti: karakter simbol #. “D” Salah, karakter menggunakan petik tunggal. ‘Di’ Salah, tidak boleh lebih dari 1 karakter yang dapat diapit oleh petik tungal. 24
Escape Sequences � � � � � b t n r ’ ” \ xdd ddd back space horizontal tab new line, line eed carriage return single quote double quote backslash notasi hexadecimal notasi octal Hampir sama dengan bahasa C/C++, hanya pada Java tidak mengenal a dan v. 25
LITERAL BOOLEAN � Literal boolean dipergunakan untuk menuliskan nilai data boolean (true atau false). � Penulisan Literal Boolean: Literal Keterangan true Berarti: nilai boolean true. false Berarti: nilai boolean false. 26
LITERAL STRING � Literal String direpresentasikan sebagai serangkaian karakter Unicode dan penulisannya diapit oleh tanda petik ganda (“ “). String di Java merupakan sebuah kelas. � Contoh Literal String: • “Komputer” • “Program Teknologi Informasi dan Ilmu Komputer” • “ 4 x 12 = 48” • “” string kosong • “ 1” string berisi karakter 1, tidak sama dengan ‘ 1’. 27
LITERAL STRING � Literal String dapat juga berisi karakter khusus seperti newline, tab, dsb. Bahkan bisa saja berisi tanda petik ganda. � Contoh Literal String berisi karakter khusus: Literal Keterangan “Bahasan. Komputer” Antara Bahasa dan Komputer terdapat newline. “Namat: t. Herman” Antara Nama dan : terdapat horisontal tab termasuk antara : dan Herman. “Teks ”Hallo”” Kata Hallo diapit oleh dua petik ganda. 28
Tipe Data Primitif � Java mempunyai 8 tipe data primitif, dengan rincian sebagai berikut: No. Tipe Data Memori 1. byte 8 bit 2. short 3. Nilai Minimum Nilai Maksimum -128 127 16 bit -32768 32767 int 32 bit – 2147483648 4. long 64 bit 5. float 32 bit ± 1. 40239846 E-45 ± 3. 40282347 E+8 6. double 64 bit ± 4. 94065645841246544 E-324 ± 1. 7976931348623157 0 E+308 7. char 16 bit u 0000 u. FFFF 8. boolean – 9223372036854775808 9223372036854775807 true atau false 29
Variabel � Variabel adalah identifier (mewakili lokasi memori tertentu) untuk menyimpan nilai data yang dapat diubah nilai datanya. � Variabel memiliki tipe data dan identifier. Tipe data menandakan tipe nilai data yang dapat disimpan di variabel tersebut. � Identifier variabel harus mengikuti aturan untuk identifier. 30
Deklarasi Variabel � Sintaks: tipe-data identifier [, identifier] [= nilai awal] ; tanda [ ] bersifat optional (boleh ada atau tidak). � Contoh: int a; float ip. Sem, ip. Kum, ip. Lulus; double minimum=0. 0, maksimum=1250000. 0; boolean cek, lulus=false; 31
Konstanta � Konstanta adalah identifier (mewakili lokasi memori tertentu) untuk menyimpan nilai data yang tidak dapat diubah nilai datanya. � Konstanta memiliki tipe data, identifier dan nilai data konstan. Tipe data menandakan tipe nilai data yang disimpan di konstanta tersebut. � Identifier konstanta harus mengikuti aturan untuk identifier. 32
Deklarasi Konstanta � Sintaks: final tipe identifier = nilai [, identifier = nilai] ; tanda [ ] bersifat optional (boleh ada atau tidak). � Contoh: final int K=100; final double MIN=0. 0, MAKS=1000000. 0; final double PI=3. 142; 33
- Slides: 33