Disusun Oleh:
ECEP DENISTIRA (NR)
14060003
Dosen
Arip, ST, M.KOM
Pada tahun 1994 sebagian besar orang menggunakan mosaic, browser web yang
tidak diperdagangkan yang berasal dari pusat Super computing Universitas Illinois pada
tahun 1993. ( Mosaic sebagian ditulis oleh Marc Andreessen dengan bayaran
$6.85 per jam, sebagai mahasiswa yang melakukan studi praktek. Di kemudian hari ia
meraih ketenaran sebagai salah seorang pendiri dan pemimpin teknologi di netscape)
Browser yang sesungguhnya dibangun oleh Patrick Naughton dan Jonathan Payne
dan berkembang ke dalam browser Hot Java yang kita miliki saat ini. Browser Hot
Java ditulis dalam Java untuk menunjukkan kemampuan Java. Tetapi para pembuat
juga memiliki ide tentang suatu kekuatan yang saat ini disebut dengan Applet,
sehingga mereka membuat browser yang mampu penerjemahkan Kode Byte tingkat
menengah. “Teknologi yang Terbukti” ini diperlihatkan pada SunWorld ’95 pada
Tanggal 23 mei 1995, yang mengilhami perkembangan terhadap Java terus berlanjut.
Referensi
“Introduction to Java”, http://www.javapassion.com/javase/javaintro.pdf
Seperti kita ketahui bersama JAVA adalah suatu teknologi di dunia software komputer,
yang merupakan suatu bahasa pemrograman tingkat tinggi dan sekaligus sebagai suatu
platform. JAVA pertama kali diperkenalkan oleh Sun Microysystem pada pertengahan
tahun 1990. Menurut definisi dari Sun, JAVA adalah nama untuk sebuah teknologi untuk
membuat dan menjalankan perangkat lunak pada komputerstandalone ataupun lingkungan
jaringan. Setiap orang yang sudah mengenal dan mempelajari atau bahkan mahir dengan
bahasa C/C++ tentunya tidak akan sulit untuk mempelajari JAVA. JAVA juga merupakan
sebuah bahasa pemrograman berorientasi objek yang dirancang agar dapat dijalankan di
semua platform.
Java Virtual Machine adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM
terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode
arsitektur netral. Kelas pemanggil memanggil file API untuk dieksekusi oleh interpreter
Java. Dengan kata lain JVM adalah sebagai perantara antara program yang akan
dijalankan dan sistem operasi yang sedang digunakan. JVM sendiri terdiri dari: class loader,
class verification, runtime interpreter, Just In-Time (JIT) untuk meningkatkan kinerja
kompilator.
Logika kerjanya adalah sebagai berikut, sebuah program yang ditulis dengan java
di-compile menjadi bahasa mesin. Tetapi bahasa mesin untuk komputer tersebut tidak
benar-benar ada. Oleh karena itu disebut “Virtual”, yang dikenal dengan Java Virtual
Machine (JVM). Bahasa mesin untuk JVM disebut Java bytecode. Interpreter berfungsi
untuk mensimulasikan JVM sama seperti virtual computer mensimulasikan PC komputer.
Java bytecode yang dihasilkan oleh setiap jenis komputer berbeda-beda, sehingga
diperlukan interpreter yang berbeda pula untuk setiap jenis komputer. Tetapi program Java
bytecode yang sama dapat dijalankan pada semua jenis komputer yang memiliki Java
bytecode.
Java Virtual Machine (JVM) ini sendiri adalah termasuk salah satu contoh dari teknologi
Virtual Machine (VM) yang saat ini tengah berkembang. Contoh lain dari teknologi VM ini
adalah VMWare dan Xen VMM. VMware memungkinkan beberapa sistem operasi
dijalankan pada satu mesin PC tunggal secara bersamaan. Hal ini dapat dilakukan tanpa
melakukan partisi ulang dan boot ulang. Pada Virtual Machine (VM) yang disediakan akan
dijalankan sistem operasi sesuai dengan yang diinginkan. Dengan cara ini maka pengguna
dapat memboot suatu sistem operasi (misal Linux) sebagai sistem operasi tuan rumah (host)
dan lalu menjalankan sistem operasi lainnya misal MS Windows. Sistem operasi yang
dijalankan di dalam sistem operasi tuan rumah dikenal dengan istilah sistem operasi tamu
(guest).
Sedangkan Xen VMM adalah open source virtual machine monitor, dikembangkan
di University of Cambridge. Dibuat dengan tujuan untuk menjalankan sampai dengan
seratus sistem operasi ber-fitur penuh (full featured OSs) di hanya satu komputer.
Virtualisasi Xen menggunakan teknologi para virtualisasi menyediakan isolasi yang aman,
pengatur sumber daya, garansi untuk quality-of-services dan live migration untuk sebuah
mesin virtual. Untuk menjalankan Xen, sistem operasi dasar harus dimodifikasi secara
khusus untuk kebutuhan tersendiri dan dengan cara ini dicapai kinerja virtualisasi sangat
tinggi tanpa hardware khusus.
Teknologi Virtual Machine sendiri ini terdiri dari beberapa bagian, diantaranya :
Selain itu teknologi VM ini memiliki beberapa kelebihan dan kekurangan. Beberapa
kelebihan yang dimilikinya antara lain dalam hal keamanan, VM memiliki perlindungan
yang lengkap pada berbagai sistem sumber daya, yaitu dengan meniadakan pembagaian
sumber daya secara langsung, sehingga tidak ada masalah proteksi dalam VM.
Kelebihan lainnya yang dimiliki oleh VM adalah memungkinkan untuk mendefinisikan
suatu jaringan dari Virtual Mchine (VM). Sedangkan untuk kekuranngannya adalah dalam
hal Sistem Penyimpanan yang membutuhkan banyak drive jika ingin mendukung banyak
VM dan Pengimplementasian yang lumayan sulit.
Adapun Java yang lainnya yaitu Java API merupakan komponen-komponen dan kelas
JAVA yang sudah jadi, yang memiliki berbagai kemampuan. Kemampuan untuk menangani
objek, string, angka, dsb. Java API terdiri dari tiga bagian utama:
● Java Standard Edition (SE), sebuah standar API untuk merancang aplikasi desktop
dan applets d engan bahasa dasar yang mendukung grafis, keamanan, konektivitas
basis data dan jaringan.
● Java Enterprose Edition (EE), sebuah inisiatif API untuk merancang aplikasi
serverdengan mendukung untuk basis data.
● Java Macro Edition (ME), sebuah API untuk merancang aplikasi yang jalan pada
alat kecil seperti telepon genggam, komputer genggam dan pager.
Pada Java API ini juga ada beberapa fitur menarik yang dapat digunakan oleh user yang
sedang berkecimpung di dunia Java. Beberapa fitur tersebut adalah :
1. Applet
2. Java Networking
3. Java Database Connectivity(JDBC)
4. Java Security
5. Java Swing
6. Java RMI
7. Java 2D/3D
8. Java Server Pages
9. JNI (Java Native Inteface)
10. Java Sound
11. Java IDL+CORBA
12. Java Card
13. JTAPI (Java Telephony API)
Ada juga jenis platform yang ada pada JAVA yaitu Java Virtual Machine (JVM) dan
Java API. Platform yang ada pada JAVA dikembangkan oleh yang namanya Java
Community Process (JCP). JCP didirikan pada tahun 1998, merupakan suatu proses formal
yang memungkinkan pihak-pihak yang tertarik untuk terlibat dalam mengembangkan versi
dan fitur dari platform JAVA tersebut. Di dalam JCP terdapat yang namanya Java
Specification Request’s atau JSRs. JSRs adalah kumpulan dokumen formal yang
menggambarkan spesifikasi dan teknologi yang diusulkan oleh orang-orang yang terlibat
dalam JCP untuk melakukan penambahan fitur-fitur yang terdapat pada platform JAVA
tersebut.
Jadi intinya siapa saja dapat mengembangkan fitur-fitur yang ada pada platform pada
JAVA. Hasil dari pengembangan tersebut dapat diusulkan ke JCP, yang nantinya usulan
tersebut akan ditampung kedalam yang namanya JSRs. Hasil akhir dari JSRs tersebut-lah
yang akan menjadi update dari versi terbaru dari JAVA.
Sumber :
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X 1/ch04s03.html
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch04s04.html
http://sos-tutors.co.uk/jvmrlo/
b. Kekurangan Java, adalah penggunaan memori yang cukup banyak, lebih besar
daripada bahasa tingkat tinggi sebelum generasi Java. Namun hal ini memang
sesuai dengan fitur beragam yang dimiliki oleh Java. Masalah memori ini juga
tidak dialami oleh semua pengguna aplikasi Java. Mereka yang sudah
menggunakan perangkat keras dengan teknologi terbaru tidak merasakan
kelambatan dan konsumsi memori Java yang tinggi. Lain halnya dengan mereka
yang menggunakan teknologi lama atau komputer yang sudah berumur tua lebih
dari empat tahun akan merasakan adanya kelambatan. Namun apapun kelemahan
yang dimiliki Java, faktanya adalah Java merupakan bahasa pemrograman yang
populer dan digunakan di seluruh dunia saat ini.
(h ttp://belajar-komputer-mu.com/pengertian-pemrograman-java-kelebihan-dan-kekuranga
n/)
1. Menulis kode program Java (bisa menggunakan Notepad, Notepad++ atau yang lain).
2. Mengkompilasi (compile) file kode sumber (source code) yang berekstensi .java.
3. Menjalankan (run) file bytecode yang berekstensi .class.
Berikut ini adalah contoh program Java sederhana berna Sapaan yang menampilkan
teks atau string "Selamat Datang Java" di jendela Command Prompt (dulu Dos Prompt).
Kode program Java ini ditulis menggunakan text editor Notepad++, dikompilasi dan
dijalankan di jendela Command Prompt. Tulis kode program Java di Notepad atau
Notepad++, beri nama file dan juga sertakan ekstensi . Java (misalnya Sapaan.java) dan
simpan di direktori, misalnya c:/hindro/javasc.
10 }
Buka jendela Command Prompt bawaan Windows, rubah folder sesuai tempat
penyimpanan file Sapaan.java (c:/hindro/javasc) dan kompilasi dengan mengetikkan javac
Sapaan.java
Apabila tidak ditemukan kesalahan (error) pada kode program, kompilasi di atas
akan menghasilkan file dengan nama sama dan berekstensi .class (Sapaan.class). File
berekstensi .class ini disebut dengan bytecode dan akan disimpan secara otomatis di
direktori yang sama dengan file Sapaan java. Apabila dibuka, isi file ini tidak dapat
dimengerti oleh manusia dan hanya bisa dijalankan oleh mesin komputer. Untuk
menjalankan (running) program tersebut (Sapaan.class), ketikkan perintah java Sapaan di
jendela Command Prompt.
Hasil menjalankan program ini adalah kalimat "Selamat Datang Java" (baris kedua). Selain
menggunakan Notepad++ untuk menulis kode program Java dan Command Promt untuk
mengkompilasi dan menjalankan program, Anda juga dapat membuat program Java di
lingkungan pengembangan terintegrasi (Integrated Development Environment|IDE) seperti
NetBeans, Sun ONE, Eclipse atau JBuilder (tiga pertama gratis dan satu terakhir berbayar).
Di IDE, penulisan kode program, mengkompilasi dan menjalankannya dapat dilakukan
sekaligus dalam satu area pengembangan.
(h ttp://www.termasmedia.com/pemrograman/java/13-mengkompilasi-dan-menjalankan-program-jav
a.html)
Seperti halnya bahasa pemrograman lainnya, java memiliki struktur dasar yang wajid
diketahui sebelum belajar lebih jauh tentang pemrograman java.
Terdapat beberapa struktur pemrograman java yaitu Comments, Modifiers, Statements,
Blocks, Classes, Methods, dan Reserved Words. Untuk mengenal lebih jauh, berikut adalah
pengenalan singkat struktur program java :
1. Comments
Comments digunakan untuk memberikan keterangan atau penjelasan suatu baris
program, struktur comments tidak akan di kompilasi oleh compiler. Lambang untuk
comments adalah double slash (//) untuk memberikan penjelasan suatu baris,
sedangkan lambang /* dan */ untuk memberikan penjelasan satu baris atau lebih.
Contoh Comments :
3. Statements
Statements merupakan baris perintah atau kumpulan perintah. Setiap statement pada
java selalu diakhiri dengan titik koma (;)
4. Blocks
Blocks digunakan untuk membentuk suatu grup statements. Blocks diawali dengan
kurung kurawal ( {} ).
5. Classes
Classes merupakan inti dari program java. Suatu class merupakan “blueprint” untuk
menciptakan suatu object.
9. Import
Digunakan pada awal sebuah file sumber untuk menentukan kelas atau seluruh paket
JAVA untuk disebut kemudian tanpa termasuk paket-paket mereka nama-nama
dalam referensi. Sejak J2SE 5.0, import laporan dapat mengipor statc anggota kelas.
10. If
If digunakan untuk membuat pernyataan jika yang menguji suatu ekspresi bernilai
true, blok pernyataan yang berhubungan dengan jika pernyataan dijalankan. Kata
kunci ini juga dapat digunakan untuk membuat pernyataan jika lai.
11. New
New digunakan untuk membuat sebuah instance dari sebuah kelas atau array.
12. Package
Sekelompok jenis paket dinyatakan dengan package kata kunci.
13. Int
Adalah kata kunci yang digunakan untuk menyatakan sebuah lapangan yang dapa
memegang 32-bit masuk integer melengkapi dua. Kata kunci ini juga digunakan
untuk menyatakan bahwa metode yang mengembalikan nilai int.
14. Interface
Digunakan untuk menyatakan tipe khusus kelas yang hanya berisi metode abstrak,
konstan (static final) bidang dan static interface. Hal ini nantinya akan
diimplementasikan oleh kelas yang menyatakan antarmuka dengan implementasi
kata kunci.
15. Long
Long kata kunci digunakan unuk menyatakan sebuah lapangan yang dapat
memegang 64-bit masuk integer yang melengkapi dua. Kata kunci ini digunakan
untuk menyatakan bahwa metode yang mengembalikan nilai tipe long.
16. Native
Digunakan dalm deklarasi metode untuk menentukan bahwa metode ini tidak
diimplementasikan dalam file sumber java yang sama, melainkan dalm bahasa lain.
17. Private
Kata kunci yang digunakan dalam pembagian lapangan, metode, atau kelas batin,
anggota swasta hanya dapat diakses oleh anggota lain dari kelas mereka sendiri.
18. Public
Piblic kata kunci yang digunakan dalam deklarasi metode, kelas, atau bidang, kelas
umum, metode dan bidang dapat diakses oleh anggota dari setiap kelas.
19. Static
Digunakan untuk menyatakan sebuah lapangan, metode atau kela batin sebagai
bidang kelas. Kelas mempertahankn satu salinan bidang kelas terlepas dari berapa
banyak contoh yang ada dari kelas itu. Static juga digunakan untuk mendefinisikan
sebuah metode sebagai metode kelas. Kelas metode yang terikat ke kelas, bukan ke
contoh spesifik, dan hanya dapat beroperasi pada kolom kelas. (kelas dan interface
dideklarasikan sebagai static anggota lain kelas atau interface sebenarnya top-level
kelas dan tidak inner class).
20. Return
Digunakan untuk menyelesaikan pelaksanaan metode. Hal ini dapat diikuti oleh
suatu nilai yang dapt diperlukan oleh defenisi metode yang dikembalikan ke
pemanggil.
21. This
Digunakan untuk mewakili sebuah instance dari kelas dimana ia muncul. This dapat
digunakan untuk mengakses anggota kelas sebagai referensi. This juga kata kunci
digunakan untuk meneruskan panggilan dari satu konstuktor dikelas untuk
konstuktor lain dikelas yang sama.
22. Throw
Kata kunci yang digunakan untuk menangani exception jenis tugas yang kompatibel.
Jikatik adahandler pengecualian tersebut ditemukan dalam metode yang sekarang,
maka kembali metode dan proses ini diulang dalam metode distack, maka
pengecualian dilewatkan kehandler pengecualian theard itu tidak tertangkap.
23. Try
Medefinisikan blok pernyataan yang telah exception handling. Jika pengecualian
dilemparkan dalam try blok, opsional catch blok dapat menagani menyatakan jenis
pengecualain. Juga,opsionalfinally blok dapat dideklarasikan yang akan dijalankan
ketika keluar eksekusi try blok dan catch klausa, telepas dari apakah pengecualain
dibuang atau tidak. Sebuah try blok harus memilki minimal satu catch klausa atau
finally blok.
24. Void
Kata kunci yang digunakan untuk menyatakan bahwa suatu metode tidak
mengembalikan nilai apapun.
25. Volatile
Digunakan dalam deklarasi lapangan untuk menentukan bahwa variabel yang diubah
asynchronously oleh bersamaan menjalankan thread, metode, kelas dan interface
sehingga tidak dapat dideklarasikan volative.
26. While
Kata kunci digunakan untuk membuat loop semntara, ynag menguji suatu ekspresi
Boolean dan mengeksekusi blok pernyataan yang berhubungan dengan loop jika
ekspresi bernilai true, ini terus sampai ekspresi bernilai false. Kta kunci ini juga
dapat digunakan untuk membuat sebuah do-while-loop.
27. Boolean
Kata kunci yang digunakan untuk menyatakan suatu bidang yang dapat menyimpan
suatu nilai Boolean, yaitu baik true atau false. Kata kunci ini juga digunakan untuk
menyatakan bahwa metode yang mengembalikan nilai tipe Boolean.
28. Char
Char kata kunci digunakan untuk menyatakan bidang yang dapat menyimpan 16-bit
Unicode karakter. Kata kunci ini juga digunakan untuk menyatakan bahwa metode
yang mengembalikan nilai tipe char.
29. Catch
Mendefinisikan sebuah handler pengecualian kelompok pernyataan yang dieksekusi
jika pengecualian dilemparkan diblok ditentukan oleh sebelumnya try kata kunci,
kode ini akan dijalankan hanya jika kelas pengecualian dilemparkan adalah tugas
kompatibel dengan kelas pengecualian dideklarasikan oleh catch klausa.
30. Const
Meskipun reserved sebagai kata kunci dijava, const tidak digunakan dan memiliki
fungsi.
31. Continue
Digunakan untuk melanjutkan eksekusi program pada akhir tubuh loop saat ini. Jika
diikuti dengan label, continue eksekusi kembali pada akhir tubuh loop brlabel
melampirkan.
32. Do
Kata kunci yang dpat digunakan bersama dengan whie untuk membuat sebuah
dowhile loop, yang menjalankan suatu blok statement berkaitan dengan loop dan
kemudian tes ekspresi Boolean yang dapat berkait dengan while, jika ekspresi
bernilai true, blok dijalankan lagi, ini trussampai ekspresi bernilai false.
33. Double
Kata kunci yang digunakan untuk menyatakan sebuah lapangan yang dapat
memegang 64-bit. Kata kunci ini juga digunakan untuk menyatakan bahwa suatu
metode megembalikan nilai tipe double.
34. Enum
Sebuah java kata kunci yang igunakan untuk mendeklarasikan tipe enumerasi. Matri
memperpanjang kelas dasar enum.
35. Extends
Digunakan dalm sebuah deklarasi kelas untuk menetukan superclass, digunakan
dalam deklarasi interface nutuk menentukan satu atau lebih superinterface. Kelas X
Y meluas kelas untuk menmbah fungsionalitas, baik dengan menambahkan field atau
metode ke Y kelas, atau dengan meng-overridemetode kelas Y. Antarmuka Z
memperluas satu atau lebih interface dengan menmbahkan metode. Kelas X
dikatakan sebagai subclass Y kelas, interface Z dikatakan sebagai interface dari
interface itu meluas. Juga digunakan untuk menentukan batas atas sebuah ketik
Generics.
36. Final
Mendefinisikan entitas sekali yang tidak dapat diubah atau berasal dari nanti. Lebih
spesifk, sebuah kelas akhir tidak dapat subclassed, metode akhir tidak dapat diganti,
dan variabel final dapat trjadi paling banyak sekali sebagai ekspresi kiri. Semua
metode dikelas terakhir secara implicit final.
37. Finaly
Digunakan untuk mendefinisikan suatu blok statement nutuk blok yang ditetakan
sebelumnya oleh try kata kunci. Yang finaly blok dijalankan setelah keluar eksekusi
try blok dan apapun yang terkait catch klausa terlepas dari apakah pengecualian
terlempar atau tertangkap, atau eksekusi meninggalkan metode ditengah try atau
catch blok menggunakan return kata kunci.
38. Float
Float kata kunci digunakan untuk menyatakan sebuah lapanagn yang dapa
memegang 32-bit persisi tunggal IEEE 754-angka floating point. Kata kinci ini juga
digunakan untuk menyatkan bahwa suatu metode mengembalikan tipe float.
39. For
For kata kunci digunakan untuk membuat loop, yang menmpatkan inisialiasai
variabel, suatu ekspresi Boolean, dan suatu incrementation. Inisialisasi variable
dilakukan terlebih dahulu, kemudian ekspresi Boolean dievaluasi. Jika ekspresi
bernilai true, blok pernyataan yang berhubungan loop dijalaankan dan kemudian
incrementation yang dilakukan.
40. Goto
Meskipun receved sebagai kata kunci dijava, goto tidak digunakan dan memiliki
fungsi pada java.
41. Implement
Untuk menentukan satu atau lebih interface yang diimplementasikan oleh kelas saat
ini. Kelas A mewarisi jenis dan metode abstrak dinyatakan oleh interface.
42. Instanceof
Sebuah operator biner yang menggunakan sebuahreferensi objek sebagai operan
pertama dan kelas atau antar muka sebagai operan kedua dan menghasilkan hasil
Boolean.
43. Protected
Kata kunci yangdigunakan dalam pembagian lapangan, metode,atau kelas batin,
anggota yang dilindungi hanya dapat diakse oleh anggota kelas mereka sendiri,
bahwa kelas itu subclass atau kelas yang sama.
44. Strictfp
Sebuah java kata kunci yang digunakan untuk membatasi persis dan pembulatan
pehitungan floating point untuk memastikan portabilitas.
45. Super
Untuk mengakse anggota kelas diwariskan oleh kelas dimana ia muncul. Super kata
kunci juga digunakan untuk meneruskan panggialn dari konstruktor di superclass.
46. Switch
Kata kunci yang digunakan dalam hubunganya dengan case dan default untuk
membuat pernyataan swtch,yang mengavaluasi sebuah variable, nilai cocok untuk
tertentu case,dan engeksekusi blok pernyataan terkait dengan case.
47. Transient
Menytakan bahwa medan bukan contoh default seri bentuobjek.
48. Synchronized
Digunakan dalam deklarasi atau blok kode metode untuk mendapatkan mutex
kunci untuk objek sedangkan saat benag mengekekusi kode.
49. Throws
Digunakan dalam deklarasi metode untuk menentukan pengecualian tidak
ditangani dalam metode melainkanditeruskan ketingkat yang lebih tniggi
berikutnya program. Semua tertngkap pengecualian dalam sebuah metode yang
tidak kasus Runtime Exception harus dideklarasikan menggunakan throws kata
kunci.
50. Short
Short kata kunci digunakan untuk menyatakan bidang bisa menampung 16-bit
integer melengkapi menandatangi dua. Kata kunci ini juga digunaka untuk
menyatakan bahwa metode yang mengembalikan nilai tipe short.
(http://keywordjava.blogspot.co.id/2013/02/jenis-jenis-keyword-pada-java-dan.html)
b. Jenis operator
Bebagai jenis operator. Macam-macam operator ini mempunyai fungsi yang
berbeda. Berbagai jenis operator ini dapat di kelompokan sebagai berikut :
1. Operator Aritmatika
Arithmatic operator (operator aritmatika) adalah operator yang berfungsi untuk
operasi aritmatika. Lihat tabel dibawah ini.
Arithmatic
Description
Operator
+ plus
- minus
* point
/ divide
% modulus
Example :
class Arithmatic {
int a = 20;
int b = 10;
System.out.println("Arithmatic Operator");
Output :
2. Operator Increment dan Decrement
Example :
class IncrementDecrement{
int i = 1;
Output :
3. Operator Assingment
Example :
class Assignment {
int a,b,c;
a = b = c = 100;
int d,e,f;
f = 200;
e = f;
d = e;
System.out.println("Value of var : " + var);
int z;
4. Operator Relasi
Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang
sering digunakan untuk mengatur alur jalannya sebuah program.
== a == b true if a equal b
class Relation{
public static void main(String[] args) {
int a,b,c;
a = 100;
b = 99;
c = 99;
System.out.println("value of a = "+a);
System.out.println("value of b = "+b);
System.out.println("value of c = "+c);
if(b == c ){
System.out.println("b equal c");
}else {
System.out.println("b not equal c");
}
if(a != b ){
System.out.println("a not equal b");
}else {
System.out.println("a equal b");
}
if(a > b ){
System.out.println("a more than b");
}else {
System.out.println("a less than b");
}
if(b < a ){
System.out.println("b less than a");
}else {
System.out.println("b more than a");
}
if(a >= b ){
System.out.println("a more than or equal b");
}else {
System.out.println("a less than or equalb");
}
if(b <= a ){
System.out.println("b less than or equal a");
}else {
System.out.println("b more than or equal a");
}
}
}
Output :
5. Operator Logika
Operator ini digunakan untuk ekspresi logik yang menghasilkan nilai
boolean. Operator-operator yang digunakan adalah AND ( && ), OR ( ¦ ¦ )
dan NOT ( ! ).
a b a||b a && b
true true true true
Example :
class Logic{
public static void main(String[] args) {
boolean _true = true;
boolean _false = false;
Output :
6. Bitwise Operator
Bitwise operator adalah operator yang dipakai untuk operasi bit pada nilai
operan. Operator yang digunakan untuk memanippulasi bit.
● Bitwise AND
Bitwise AND akan menghasilkan bit “1”, jika kedua operan bernilai bit
“1”. Operasi bitwise AND dapat digambarkan sebagai berikut :
a b a&b
0 0 0
0 1 0
1 0 0
1 1 1
● Bitwise OR
Bitwise OR akan menghasilkan bit “1”, jika salah satu operan bernilai bit
“1”. Operasi bitwise OR dapat digambarkan sebagai baerikut :
a b a&b
0 0 0
0 1 1
1 0 1
1 1 1
a b a&b
0 0 0
0 1 1
1 0 1
1 1 1
.
● Bitwise Complement
Bitwise Complement akan menghasilkan bit yang berlawanan dengan bit
yang dioperasikan. Operasinya dapat digambarkan sebagai berikut :
Example :
class Bitwise{
public static void main(String[] args) {
int x,y;
x = ~100;
System.out.println("value of inverse of x : "+x);
x = 17 & 30;
System.out.println("value of and : "+x); x = 17 | 30;
System.out.println("value of or : "+x); x = 17 ^ 30;
System.out.println("value of xor : "+x); x = 111; y = x >> 1;
System.out.println("value of right shift : "+x); x = -111; y = x >> 1;
System.out.println("value of right shift neg : "+x); x = 111; y = x >>> 1;
System.out.println("value of right shift 1 bit 0 : "+x); x = -111; y = x >>> 1;
System.out.println("value of right shift 1 bit 0 neg : "+x); x = 111; y = x << 1;
System.out.println("value of left shift : "+x); x = 1000; y = x << 1;
System.out.println("value of left shift : "+x);
}
}
Output :
7. Boolean Operator
Boolean operator (operator boolean) adalah operator yang mengharuskan
operannya bertipe boolean (true atau false).
● Byte
Type byte umumnya digunakan pada saat kita bekerja dengan sebuah
data stream dari suatu file maupun jaringan, yaitu untuk kepeluan proses
membaca/menulis. Selain itu, tipe ini juga digunakan saat bekerja dengan
data biner yang tidak kompatibel dengan tipe-tipe lain yang didefiniskan di
dalam Java. Contoh :
class Contoh Byte {public static void main(String [] args){byte
a;a=127;System.out.println(a);}}
● Short
Pada umumnya diaplikasikan pada komputer-komputer 16-bit, yang saat ini
semakin jarang keberadaanya. Contoh :
class ContohShort {public static void main(String[]args){short
umurWafiy;short umurAdit;short
selisih;umurWafiy=23;umurAdit=13;selisih=umurWafiy-umurAdit;System.
out.println(“Selisih umur mereka adalah “ + selisih + ” tahun”);
● Int
Tipe ini merupakantipe yang paling banyak dipakai dalam
merepresentasikan angka dalam Java, dikarenakan dianggap paling efisien
dibandingkan dengan tipe-tipe integer lainnya. Tipe Int banyak digunakan
untuk indeks dalam struktur pengulangan maupun dalam konstruksi
sebuah array.Selain itu, secara teori setiap ekspresi yang melibatkan tipe
integer byte, short, int, long) semuanya akan dipromosikan ke int terlebih
dahulu sebelum dilakukan proses perhitungan.
Contoh :
class HitungGaji{public static void main(String[]args){int gaji;int lama
Kerja;int
besarGajigaji=5000000;lamaKerja=4;besarGaji=gaji*lamaKerja;System.
out.println(besarGaji);}}
● Long
Tipe ini digunakan untuk kasus-kasus tertentu yang nilainya berada di luar
rentang tipe int, karna tipe ini punya range paling tinggi dibanding Integer
lainnya. Dengan kata lain, tipe long terpaksa digunakan jika data memiliki
ontoh:
range diluar range int. C
public class MassaPlanet{public static void main (String[]args){long
volum=1864824217374668;long massaJenis=77886;long
massa=volum*massaJenis;System.out.println(massa);}}
Ukuran
Tipe bi Range Presisi (jumlah digit)
bytes t
● Float
Tipe ini digunakan untuk menandakan nilai–nilai yang mengandung presisi
atau ketelitan tunggal (single-precision) yang menggunakan ruang
penyimpanan 32-bit. Presisi tunggal biasanya lebih cepat untuk
processor-processor tertentu dan memakan ruang penyimpanan setengah
kali lebih sedikit dibandingkan presisi ganda (double precision) .
Permasalahan yang timbul dari pemakaian tipe float untuk nilai-nilai yang
terlalu kecil atau justru terlalu besar, karena nilai yang dihasilkan akan
menjadi tidak akurat. Contoh penggunaan variabel :
float suhu;
● Double
Tipe ini mengandung tingkat ketelitian ganda atau presisi ganda (double
precision) dan menggunakan ruang penyimpanan 64-bit untuk menyimpan
nilai. Tipe double tentu lebih cepat untuk melakukan
perhitungan-perhitungan matematis daripad tipe float. Untuk perhitungan
yang bersifat bilangan riil dan menghasilkan hasil yang lebih akurat, maka
lebih baik menggunakan tipe double. Contoh :
class KelilingLingkaran {public static void main (String[] args) {double pi
= 3.1416;double r = 2.12;double keliling;keliling =
2*pi*r;System.out.println(“Keliling Lingkaran = ”+ keliling);}}
3. Char
Tipe data char merupakan tipe untuk menyatakan sebuah karakter.
Java menggunakan karakter Unicode untuk merepresentasikan semua
karakter yang ada . Unicode ialah sekumpulan karakter yang terdapat pada
semua bahasa, seperti bahasa Latin, Arab, Yunani dan lain-lainnya. Karena
bahasa Java dirancang untuk dapat diterapkan di berbagai macam platform,
maka Java menggunakan karakter Unicode yang membutuhkan ukuran
16-bit. Untuk karakter-karakter yang tidak dapat diketikkan secara langsung
melalui keyboard, java menyediakan beberapa escape sequence (pasangan
karakter yang dianggap sebagai karakter tunggal). Escape sequence t idak
dianggap sebagai String, melainkan tetap sebagai tipe karakter khusus. Di
bawah ini akan dijelaskan beberapa contoh tentang escape sequence.
Contoh :
class ContohKarakter {public static void main (String[] args) {char ch = 65;//
65 merupakan kode untuk karakter A;System.out.println(“ch1=”+ch);ch++;
//increment(penaikan nilai sebesar 1)System.out.println(“ch2 = ”+ ch);}}
4. Boolean
Tipe boolean adalah tipe data yang digunakan untuk menampung nilai
logika, yaitu nilai yang hanya memiliki dua buah kemungkinan (benar atau
salah). Tipe ini ditandai dengan kata kunci Boolean. Dalam bahasa Java,
nilai benar dipresentasikan dengan kata kunci true dan nilai salah dengan
kata kunci false. Contoh :
class ContohBolean {public static void main (String[] args) {boolean a =
true;if (a) {System.out.println(“Perintah dilaksanakan ”);}//negasi dari aIf
(!a) {System.out.println(“Perintah tidak dilaksanakan ”);}}}
b) Tipe Data Referensi
1. Class
Kelas dapat didefiniskan sebagai cetak biru (blueprint) atau
prototipe/kerangka yang mendefiniskan variabel-variabel (data) dan
method-method (perilaku) umum dari sebuah objek. Dengan kata lain kelas
adalah sebuah kesatuan yang terintegrasi antara method dan data yang
mengacu pada suatu objek. Dalam dunia permrograman, sebenarnya kelas
tidak jauh berbeda dengan tipe data sederhana. Perbedaannya, tipe data
sederhana digunakan untuk mendeklarasikan variabel ‘normal’, sedangkan
kelas digunakan untuk mendeklarasikan sebuah variabel yang berupa objek.
Variabel yang berupa objek ini sering disebut dengan referensi objek (object
reference). Pada saat kita membuat sebuah kelas baru. Sekali didefiniskan,
maka tipe data baru ini dapat digunakan untuk membuat suatu objek dari tipe
tersebut. Dengan kata lain, kelas adalah pola (template) untuk pembuatan
objek, dan objek adalah wujud nyata (instance) dari sebuah kelas.
Contoh : public Class Mahasiswa{public String nama;public int
nrp;Mahasiswa(String a, int b){nama =a;nrp= b;}public void cetak
(){System.out.println(“Nama : “+nama+” nrp : “+nrp);}} Setelah kita
membuat sebuah kelas, untuk menggunakannya maka kita harus membuat
sebuah instance dari kelas tersebut. Berikut cara membuat objek dari kelas :
class Demo {public static void main(String[]args){Mahasiswa mhs;mhs =
new Mahasiswa(“Rezki”,5211100048)}}
2. Array
Tipe data ini memiliki kemampuan untuk menggunakan satu variabel yang
dapat menyimpan sebuah data list dan kemudian memanipulasinya dengan
lebih efektif. Sebuah array akan menyimpan beberapa item data yang
memiliki tipe data sama didalam sebuah blok memori yang berdekatan yang
kemudian dibagai menjadi beberapa slot.
3. Interface
Interface merupakan sekumpulan method yang hanya memuat deklarasi dan
struktur method, tanpa detail implementasinya. Sedangkan detail dari method
tersebut berada pada class yang mengimplementasikan interface tersebut.
Interface digunakan bila Anda ingin mengaplikasikan suatu method yang
spesifik, yang tidak diperoleh dari proses inheritance yang lebih terbatas.
Tipe data yang boleh pada interface hanya tipe data konstan.
http://eskun.blogspot.co.id/2013/03/macam-macam-tipe-data-pada-java.html
Program Penjumlahan.java
//--------------------------------------------------------------
Program Segitiga.java
//--------------------------------------------------------------
Program DekChar.java
//--------------------------------------------------------------
Program Logic.java
//--------------------------------------------------------------
Attribute:
Topi, Baju, Tas Punggung
Behavior:
Cara Jalan ke Depan
Cara Jalan Mundur
Cara Belok ke Kiri
Cara Memanjat
Attribute = Variable(Member)
Behavior = Method(Fungsi)
Dari object orang diatas, dimana attribut dan behaviornya sudah di ketahui, maka kita dapat
membuat suatu program java sebagai berikut :