3. Sejarah Java
Proyek penelitian Sun Microsystem bernama Green pada
tahun 1991.
Oleh James Gosling diberi nama Oak.
Nama Oak diganti menjadi Java dan diperkenalkan oleh
Sun Microsystem pada tahun 1995
1995.
4. Karakteristik Java
Simple
Merupakan pemodelan dari bahasa C++ dengan memperbaiki beberapa karakteristik
dari C++ seperti penambahan fungsionalitas dan pengurangan kompleksitas
(menghilangkan multiple inheritance).
Multiplatform
f
Bahasa Java dapat diterjemahkan oleh java interpreter pada berbagai macam sistem
operasi (linux, windows, dll) .
Object Oriented
Bahasa Java membagi program menjadi objek‐objek yang kemudian memodelkan
sifat dan tingkah laku masing‐masing objek dan selanjutnya mengatur interaksi antar
objek.
Multithreaded
Thread adalah proses yang dapat dikerjakan oleh suatu program dalam suatu waktu
sehingga dapat mengerjakan beberapa proses dengan waktu yang hampir
bersamaan.
Distributed
Java dib t untuk membuat aplikasi t di t ib i l bih mudah d
J dibuat t k b t lik i terdistribusi lebih d h dengan t
tersedianya
di
Networking Library yang terintegrasi pada Java.
5. Perkembangan Java
Saat ini Sun Microsystem membagi menjadi 4 jenis edisi :
Java Card
Digunakan pada peralatan elektronik yang memiliki memori sangat terbatas. Exp : Smart
Card.
J2ME (
(Java 2 Micro Edition)
d )
Digunakan untuk penerapan pada peralatan mobile device. Exp : Handphone, Pocket PC,
PDA.
J2SE (Java 2 Standard Edition)
Digunakan untuk aplikasi aplikasi dekstop dan applet (aplikasi java yang dapat dijalankan di
aplikasi‐aplikasi
browser web).
J2EE (Java 2 Enterprise Edition)
Digunakan untuk aplikasi skala besar (Enterprise) , aplikasi server dan aplikasi terdistribusi.
Setiap edisi java terdiri dari 2 komponen utama :
Java Application Programming Interface (Java API).
Terdiri dari kumpulan library yang digunakan untuk keperluan pemrograman.
Java Run Time Environment (JRE).
Linkungan yang membuat aplikasi java dapat berjalan Salah satu komponen terpenting JRE
berjalan.
adalah Java Virtual Machine (JVM).
7. Java Virtual Machine (JVM)
JVM menyediakan spesifikasi hardware dan platform dimana
kompilasi kode Java terjadi.
Spesifikasi inilah yang membuat aplikasi berbasis Java menjadi bebas
dari platform manapun karena proses kompilasi diselesaikan oleh
JVM.
Aplikasi program Java diciptakan dengan file teks berekstensi .java.
Program ini dikompilasi menghasilkan satu berkas bytecode
berekstensi l
b k t i .class atau l bih
t lebih.
Bytecode adalah serangkaian instruksi serupa instruksi kode mesin.
Perbedaannya adalah kode mesin harus dijalankan pada sistem
komputer dimana kompilasi ditujukan, sementara bytecode berjalan
pada java interpreter yang tersedia di semua platform sistem komputer
dan sistem operasi.
8. Garbage Collection
Pengelolaan alokasi memory untuk pencegahan
Memory leaks.
Tidak
Tid k perlu menghapus sendiri objek – objek yang
l h di i bj k bj k
tidak digunakan lagi.
Fasilitas ini mengurangi beban pengelolaan memori
oleh pemrogram dan mengurangi atau mengeliminasi
sumber kesalahan terbesar yang terdapat pada bahasa
y g p p
yang memungkinkan alokasi dinamis.
9. Code Security
Terimplementasi pada Java melalui penggunaan Java Runtime
Environment (JRE).
J
Java menggunakan model pengamanan 3 lapis untuk
gg p g p
melindungi sistem dari untrusted Java Code :
class‐loader : menangani pemuatan kelas Java ke runtime
interpreter. Proses ini menyediakan pengamanan dengan
memisahkan k l –kelas yang b
i hk kelas k l berasal d i l l disk d
l dari local di k dengan k l
kelas
– kelas yang diambil dari jaringan.
bytecode verifier : membaca bytecode sebelum dijalankan dan
menjamin bytecode memenuhi aturan – aturan dasar bahasa Java Java.
manajemen keamanan menangani keamanan tingkat aplikasi
dengan mengendalikan apakah program berhak mengakses sumber
daya seperti sistem file, port jaringan, proses eksternal dan sistem
y p ,p j g ,p
windowing.
10. Java Development Kit (JDK)
Merupakan seperangkat aplikasi dan library yang digunakan
untuk mengembangkan program dengan bahasa java.
Komponen utama dalam pemrograman java yang didalamnya
terdapat :
java => interpreter
javac =>compiler
javadoc => documentation generator
jdb => debugger
appletviewer => run and debug Java applets without a web browser.
dll
Instalasi pada Windows
Set PATH dan JAVA_HOME pada Environment Variable
set PATH=%PATH%;<your JavaBin directory>
set JAVA_HOME=<your Java directory>
11. Contoh Program Java Sederhana
class Message{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
public static void main(String[] args)
Baris kode diatas mendeklarasikan method dengan nama main. Java akan mencari
method ini sebagai titik awal eksekusi program.
public => access specifier yang menentukan visibility level.
static => method main() yang dipanggil tanpa harus terlebih dahulu membuat
instance dari class Message
Message.
void => method main() tidak mengembalikan nilai apapun setelah dieksekusi.
Main => nama method.
String[] args =>method main menerima variabel dengan nama args dengan tipe
String b i
St i sebagai parameter. T d [] b
t Tanda berarti args merupakan variabel array.
ti k i b l
12. Identifier
Nama yang digunakan untuk mengedintifikasikan
elemen program, misalnya variabel, konstanta, nama
kelas dll
dll.
Aturan :
Tidak boleh diambil dari keyword atau true false null
true, false, null.
Boleh menggunakan huruf, angka, garis bawah, atau
tanda dolar ($).
13. Keyword
Kata yang mempunyai arti khusus sehingga tidak
dapat digunakan sebagai identifier.
Contoh :
C h
class
extends
public
dll
15. Tipe Data
Terdapat beberapa tipe data dasar atau primitif :
Numerik bulat (byte,short,long,int)
Numerik pecahan (float, double)
Logika (boolean)
Karakter (char)
Contoh:
int idx = 2;
int hasil = idx*10;
16. Operator
Dilakukan untuk melakukan pengolahan data
increment/decrement : ++,‐‐
penambahan : +
pengurangan : ‐
perkalian : *
pembagian : /
perbandingan : < <=,>,> ,==,!
<,< > >= !=
kondisi : &&, ||
Assignment : =
g
17. Operator Shorthand
Bertujuan untuk menyingkatkan penulisan
Operator Contoh Ekuivalen
+
+= i += 5
+ i = i+5;
‐= i ‐= 5 i = i‐5;
*= i *= 5 i = i*5;
/= i /= 5 i = i/5;
%=
% i% 5
%= i = i%
i%5;
Contoh
18. Variable dan Konstanta
Variabel adalah suatu nama yang digunakan untuk
menyimpan suatu nilai dari tipe data tertentu.
Nilainya bersifat dinamis
dinamis.
int bilangan;
Konstanta : variable yang nilainya tidak dapat berubah
(nilainya statis).
final double PI = 3.14;
3 4
19. Increment dan Decrement
Modus operasi penambahan / pengurangan 1 nilai.
Operator Nama
++var Preincrement
var++ Postincrement
‐‐var Predecrement
var‐‐ Postdecrement
Contoh
20. Enumerasi
Tipe data yang didefinisikan oleh programmer.
Membuat daftar nilai‐nilai dalam jumlah terbatas.
Contoh :
enum hari {senin, selasa, rabu, kamis, jumat,sabtu,
minggu}
27. Casting
Casting diperlukan jika akan
memaksakan/penyesuaian dari satu tipe data ke tipe
data lainnya atau dari suatu tipe objek (class) atau ke
tipe objek (class) lainnya
28. Array
Variabel yang menyimpan sejumlah data
Data yang tersimpan pada array mempunyai index.
Fungsi “length” untuk mengetahui jumlah elemen pada array.
length