Persiapan Awal Untuk Pemrograman Java.
Langkah pertama kita download Java dari Oracle
Java SE Development Kit 8 Downloadsalamatnya disini : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
disini untuk download
Setelah selesai download. Silahkan Instal JAVA nya. Setelah selesai di install kita setting path java nya agar bisa execute di path mana saja. Cara Setting Path:
1. Klik kanan my computer -> pilih Advance System Setting -> Pilih Environment Variabels
Environment Variabel adalah untuk mensetting path URL java
2. Pilih Path, lalu pilih edit.
3. Masuk windows explorer, masuk ke folder java C:\Program Files\Java\jdk1.6.0_33\bin
Windows Explorer Lokasi Instal Java
4. Copy Url java di atas, C:\Program Files\Java\jdk1.6.0_33\bin
5. Masukan kedalam Path, Edit yg ada di environment variables lalu pastekan. Dan tambahkan ; (titik koma) di belakang url tersebut.
6. Restart Komputer
7. Buka CMD(Command Prompt) lalu ketikan Java, maka akan muncul di bawah ini.
Command Java pada cmd untuk melihat java telah terinstal
8. Ketikan JAVAC, maka akan muncul seperti di bawah ini:
Command JAVAC pada cmd untuk melihat fungsi java bisa di compile di mana saja
Jika semua command berjalan sesuai yang di atas maka Instalasi Java dengan setting path sukses di lakukan.
Atau dengan cara Setting Classpath pada command-prompt tulis
Misalkan jika direktori latihan /prakter program java ada di D:\latihjava kemudian muncul seperti di bawah ini:
maka tulis di perintah command prompt seperti ini
set PATH=C:\Program Files\Java\jdk\bin;%PATH%
set CLASSPATH = .; D:\latihjava
Atau buat file batch dengan isi seperti tulisan di atas, simpan dua baris perintah command di atas ke sebuah file yang bernama pathjava.bat. Jalankan program tsb dalam cmd windows.
Setelah selesai download. Silahkan Instal JAVA nya. Setelah selesai di install kita setting path java nya agar bisa execute di path mana saja. Cara Setting Path:
1. Klik kanan my computer -> pilih Advance System Setting -> Pilih Environment Variabels
Environment Variabel adalah untuk mensetting path URL java
2. Pilih Path, lalu pilih edit.
3. Masuk windows explorer, masuk ke folder java C:\Program Files\Java\jdk1.6.0_33\bin
Windows Explorer Lokasi Instal Java
4. Copy Url java di atas, C:\Program Files\Java\jdk1.6.0_33\bin
5. Masukan kedalam Path, Edit yg ada di environment variables lalu pastekan. Dan tambahkan ; (titik koma) di belakang url tersebut.
6. Restart Komputer
7. Buka CMD(Command Prompt) lalu ketikan Java, maka akan muncul di bawah ini.
Command Java pada cmd untuk melihat java telah terinstal
Command JAVAC pada cmd untuk melihat fungsi java bisa di compile di mana saja
Jika semua command berjalan sesuai yang di atas maka Instalasi Java dengan setting path sukses di lakukan.
Atau dengan cara Setting Classpath pada command-prompt tulis
maka tulis di perintah command prompt seperti ini
set PATH=C:\Program Files\Java\jdk\bin;%PATH%
Program Java Pertamaku
Interpreter Java umumnya selalu akan meminta metoda main saat program aplikasi dieksekusi.
public class HelloSMK
{
/**
* Program Pertama
*/
public static void main(String[] args)
{
//Menampilkan kalimatSMK Bisa!!!
System.out.println("SMK Bisa!!!");
}
}
Keterangan program
Baris pertama kode:
public class HelloSMK menandakan nama class yaitu HelloSMK.
Dalam Java , semua kode seharusnya ditempatkan di dalam deklarasi class. Kita melakukannya dengan menggunakan kata kunci class.
Sebagai tambahan, class menggunakan access specifier public, yang mengindikasikan bahwa class kita mempunyai akses bebas ke class yang lain dari package yang lain pula (package merupakan kumpulan class-class).
Baris berikutnya yaitu yang terdiri atas kurung kurawal {menandakan awal blok. Pada kode ini,kita menempatkan kurung kurawal pada baris selanjutnya setelah deklarasi class, bagaimanapun, kita dapat juga meletakkan kurung kurawal ini setelah baris pertama dari kode yang kita tulis. Jadi, kita dapat menulis kode kita sebagai berikut:
public class HelloSMK
{
atau
public class HelloSMK {
Tiga baris selanjutnya menandakan adanya komentar Java. Komentar adalah sesuatu yang digunakan untuk mendokumentasikan setiap bagian dari kode yang ditulis. Komentar bukan merupakan bagian dari program itu sendiri, tetapi digunakan untuk tujuan dokumentasi. Komentar itu sendiri dapat ditambahkan pada kode yang Anda tulis sebagai petunjuk yang dapat membantu proses pembelajaran pemrograman yang baik.
/**
* Program Pertama
*/
Komentar dinyatakan dengan tanda “/*” dan “*/”. Segala sesuatu yang ada diantara tanda tersebut diabaikan oleh compiler Java, dan mereka hanya dianggap sebagai komentar.
Baris selanjutnya, public static void main(String[] args) {
atau dapat juga ditulis sebagai berikut,
public static void main(String[] args)
{
Mengindikasikan nama suatu method dalam class HelloSMK yang bertindak sebagai method utama. Method utama adalah titik awal dari suatu program Java.
Yakinkan untuk mengikuti kaidah penulisan tanda yang benar. Baris selanjutnya juga merupakan komentar, //Menampilkan kalimatSMK Bisa!!!
Sekarang kita mempelajari 2 cara untuk membuat komentar. Cara pertama adalah dengan menempatkan komentar dalam /* dan */,dan cara yang lain adalah dengan menuliskan tanda // pada awal komentar.
Baris selanjutnya, System.out.println("SMK Bisa!!!"); menampilkan teks “HelloWorld!”pada layar
Perintah System.out.println(), menampilkan teks yang diapit oleh tanda doublepute(“”) pada layar.
Dua baris terakhir yang terdiri atas dua kurung kurawal digunakan untuk menutup method utama dan masing-masing class secara berurutan.
Sebagai tambahan, class menggunakan access specifier public, yang mengindikasikan bahwa class kita mempunyai akses bebas ke class yang lain dari package yang lain pula (package merupakan kumpulan class-class).
Jobsheet Membuat Variabel dan menampilkan variable
public class ContohVariable
{
public static void main( String[] args ){
//deklarasi tipe data dengan nama variable hasil dan tipe data boolean
boolean hasil;
//deklarasi tipe data dengan nama variabel pilihan dan tipe data char
char pilihan;
pilihan = 'C'; //menandai 'C' sebagai pilihan
//deklarasi tipe data dengan nama variabel nilai, double tipe data dan telah di inisialisasi 0.0
double nilai = 0.0;
}
}
Untuk menampilkan nilai dari variabel yang diinginkan, kita dapat menggunakan perintah sebagai berikut,
System.out.println()
System.out.print()
Berikut ini adalah contoh program,
public class OutputVariable
{
public static void main( String[] args ){
int value = 10;
char x;
x = ‘A’;
System.out.println( value );
System.out.println( “The value of x=” + x );
}
}
Program tersebut akan mengeluarkan teks berikut pada layar monitor,
10
The value of x=A
VARIABEL
Di Java setiap variabel memiliki sebuah tipe data, Untuk membuat sebuah variabel, pertama kita tempatkan tipe dari variabel itu dan diikuti oleh nama dari variabel yang akan dibuat.
Contoh :
double gaji;
int hariKerja;
long jumlahPenduduk;
char c;
boolean udah;
Setiap pendeklarasian sebuah variabel harus diakhiri dengan sebuah semicolon ;.
Semicolon dibutuhkan karena pendeklarasian sebuah variabel adalah sebuah statement di Java.
TIPE DATA
Tipe data mendefinisikan metode penyimpanan untuk mereperesentasikan informasi dan cara informasi diinterprentasikan. Tipe data berkaitan erat dengan penyimpanan variabel di memori karena tipe data variabel menentukan cara kompilator menginterpretasikan isi memori.
Tipe data dalam Java dibagi dalam dua kategori:
1. Sederhana, Tipe data sederhana merupakan tipe inti. Tipe sederhana ini tidak diturunkan dari tipe lain. Tipe ini sering disebut juga dengan tipe primitive.
Terdapat 8 tipe tipe sederhana dan dipisahkan dalam 4 kelompok:
Empat tipe adalah untuk bilangan bulat (integer) bertanda: byte, short, int, dan long.
Dua untuk tipe angka mempunyai desimal (floating point) atau bilangan pecahan: float dan double.
Satu untuk tipe karakater yaitu char, mewakili simbol pada himpunan karakter seperti tulisan dan angka.
Satu untuk tipe Boolean, merupakan tipe untuk besaran logika (nilai 'benar' atau 'salah').
2. Komposit, Tipe data komposit disusun dari tipe data sederhana atau tipe komposit lain yang telah ada. Tipe ini antara lain: string, array, class, dan interface.
BYTE
byte adalah tipe data yang mempunyai tanda 8-bit.
SHORT
short adalah tipe data yang mempunyai tanda16-bit.
INTEGER
Integer adalah tipe yang paling banyak digunakan pada program. Program Java terdapat 5 integer, yaitu: Tipe Ukuran Jangkauan
1 byte 8 bit -128 s/d 127
2 short 16 bit -32768 s/d 32767
3 int 32 bit -2147483648 s/d 2147483647
4 long 64 bit -9223372036854775808 s/d 9223372036854775807
5 char 16 bit 0 s/d 65535
TIPE CHAR
Tipe char mempunyai 16-bit tidak bertanda( + - ) dan digunakan untuk menyimpan puluhan ribu karakter dari kumpulan karakter Unicode international. Kumpulan karakter standar yang dikenal sebagai ASCII hanya meliputi rentang nilai dari 0 sampai 127 dan memiliki pengembangan kumpulan karakter 8-bit, ISO-Latin-1 dari 0 sampai 255.
ARRAY
Array adalah kelompok variabel dengan tipe sejenis dan dinyatakan dengan nama yang sama. Dengan kata lain, array merupakan tipe khusus yang menyatukan sekelompok variabel dengan tipe yang sama.
OPERATOR
Operator adalah simbol yang biasa digunakan dalam menulis suatu penugasan atau pernyataan / statement dalam bahasa pemrograman. Operator akan melakukan suatu operasi terhadap operand sesuai dengan fungsinya, seperti penjumlahan, pengurangan, perkalian, dan sebagainya.
Operator di Java ada 7 macam, yaitu :
Operator penugasan
Operator matematika
Operator penaikan dan penurunan
Operator bitwise ( manipulasi bit )
Operator relasional
Operator logika Boolean
Operator majemuk
OPERATOR LOGIKA BOOLEAN
Operator ini menghasilkan nilai True atau False (benar atau salah). hanya digunakan untuk melakukan operasi pada operand yang bertipe boolean.
Berikut daftar operator logika boolean :
Operator Keterangan
& Logika AND
| Logika OR
^ Logika XOR
! Logika NOT
&& Short circuit Logika AND
|| Short circuit Logika OR
== Logika sama dengan ( membandingkan, bukan penugasan )
!= Logika tidak sama dengan
OPERATOR PENAIKAN DAN PENURUNAN
Operator ini digunakan untuk menaikkan atau menurunkan suatu nilai integer (bilangan bulat) sebanyak satu satuan dan hanya dapat digunakan pada variabel bertipe integer.
Operator Keterangan Contoh Penulisan Sama Artinya dengan
++ Penambahan dengan nilai satu x++ x = x + 1
- - Pengurangan dengan nilai satu x-- x= x - 1
OPERATOR MAJEMUK
Operator ini merupakan gabungan dari operator dengan operator penugasan. Berikut operator majemuk pada Javai:
Operator Keterangan/contoh
+ = x += 10 sama artinya dengan x = x +10
– = x - = 10 sama artinya dengan x = x -10
* = x *= 10 sama artinya dengan x = x *10
/ = x /= 10 sama artinya dengan x = x /10
% = x %= 10 sama artinya dengan x = x %10
{
public static void main( String[] args ){
//deklarasi tipe data dengan nama variable hasil dan tipe data boolean
boolean hasil;
//deklarasi tipe data dengan nama variabel pilihan dan tipe data char
char pilihan;
pilihan = 'C'; //menandai 'C' sebagai pilihan
//deklarasi tipe data dengan nama variabel nilai, double tipe data dan telah di inisialisasi 0.0
double nilai = 0.0;
}
}
Untuk menampilkan nilai dari variabel yang diinginkan, kita dapat menggunakan perintah sebagai berikut,
System.out.println()
System.out.print()
Berikut ini adalah contoh program,
public class OutputVariable
{
public static void main( String[] args ){
int value = 10;
char x;
x = ‘A’;
System.out.println( value );
System.out.println( “The value of x=” + x );
}
}
Program tersebut akan mengeluarkan teks berikut pada layar monitor,
10
The value of x=A
VARIABEL
Di Java setiap variabel memiliki sebuah tipe data, Untuk membuat sebuah variabel, pertama kita tempatkan tipe dari variabel itu dan diikuti oleh nama dari variabel yang akan dibuat.
Contoh :
double gaji;
int hariKerja;
long jumlahPenduduk;
char c;
boolean udah;
Setiap pendeklarasian sebuah variabel harus diakhiri dengan sebuah semicolon ;.
Semicolon dibutuhkan karena pendeklarasian sebuah variabel adalah sebuah statement di Java.
TIPE DATA
Tipe data mendefinisikan metode penyimpanan untuk mereperesentasikan informasi dan cara informasi diinterprentasikan. Tipe data berkaitan erat dengan penyimpanan variabel di memori karena tipe data variabel menentukan cara kompilator menginterpretasikan isi memori.
Tipe data dalam Java dibagi dalam dua kategori:
1. Sederhana, Tipe data sederhana merupakan tipe inti. Tipe sederhana ini tidak diturunkan dari tipe lain. Tipe ini sering disebut juga dengan tipe primitive.
Terdapat 8 tipe tipe sederhana dan dipisahkan dalam 4 kelompok:
Empat tipe adalah untuk bilangan bulat (integer) bertanda: byte, short, int, dan long.
Dua untuk tipe angka mempunyai desimal (floating point) atau bilangan pecahan: float dan double.
Satu untuk tipe karakater yaitu char, mewakili simbol pada himpunan karakter seperti tulisan dan angka.
Satu untuk tipe Boolean, merupakan tipe untuk besaran logika (nilai 'benar' atau 'salah').
2. Komposit, Tipe data komposit disusun dari tipe data sederhana atau tipe komposit lain yang telah ada. Tipe ini antara lain: string, array, class, dan interface.
byte adalah tipe data yang mempunyai tanda 8-bit.
SHORT
short adalah tipe data yang mempunyai tanda16-bit.
INTEGER
Integer adalah tipe yang paling banyak digunakan pada program. Program Java terdapat 5 integer, yaitu: Tipe Ukuran Jangkauan
1 byte 8 bit -128 s/d 127
2 short 16 bit -32768 s/d 32767
3 int 32 bit -2147483648 s/d 2147483647
4 long 64 bit -9223372036854775808 s/d 9223372036854775807
5 char 16 bit 0 s/d 65535
TIPE CHAR
Tipe char mempunyai 16-bit tidak bertanda( + - ) dan digunakan untuk menyimpan puluhan ribu karakter dari kumpulan karakter Unicode international. Kumpulan karakter standar yang dikenal sebagai ASCII hanya meliputi rentang nilai dari 0 sampai 127 dan memiliki pengembangan kumpulan karakter 8-bit, ISO-Latin-1 dari 0 sampai 255.
ARRAY
Array adalah kelompok variabel dengan tipe sejenis dan dinyatakan dengan nama yang sama. Dengan kata lain, array merupakan tipe khusus yang menyatukan sekelompok variabel dengan tipe yang sama.
OPERATOR
Operator adalah simbol yang biasa digunakan dalam menulis suatu penugasan atau pernyataan / statement dalam bahasa pemrograman. Operator akan melakukan suatu operasi terhadap operand sesuai dengan fungsinya, seperti penjumlahan, pengurangan, perkalian, dan sebagainya.
Operator di Java ada 7 macam, yaitu :
Operator penugasan
Operator matematika
Operator penaikan dan penurunan
Operator bitwise ( manipulasi bit )
Operator relasional
Operator logika Boolean
Operator majemuk
OPERATOR LOGIKA BOOLEAN
Operator ini menghasilkan nilai True atau False (benar atau salah). hanya digunakan untuk melakukan operasi pada operand yang bertipe boolean.
Berikut daftar operator logika boolean :
Operator Keterangan
& Logika AND
| Logika OR
^ Logika XOR
! Logika NOT
&& Short circuit Logika AND
|| Short circuit Logika OR
== Logika sama dengan ( membandingkan, bukan penugasan )
!= Logika tidak sama dengan
OPERATOR PENAIKAN DAN PENURUNAN
Operator ini digunakan untuk menaikkan atau menurunkan suatu nilai integer (bilangan bulat) sebanyak satu satuan dan hanya dapat digunakan pada variabel bertipe integer.
Operator Keterangan Contoh Penulisan Sama Artinya dengan
++ Penambahan dengan nilai satu x++ x = x + 1
- - Pengurangan dengan nilai satu x-- x= x - 1
OPERATOR MAJEMUK
Operator ini merupakan gabungan dari operator dengan operator penugasan. Berikut operator majemuk pada Javai:
Operator Keterangan/contoh
+ = x += 10 sama artinya dengan x = x +10
– = x - = 10 sama artinya dengan x = x -10
* = x *= 10 sama artinya dengan x = x *10
/ = x /= 10 sama artinya dengan x = x /10
% = x %= 10 sama artinya dengan x = x %10
TAHAPAN DAN LANGKAH-LANGKAH PEMROGRAMAN JAVA
Gambar ini menjelaskan aliran proses kompilasi dan eksekusi sebuah program Java
Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada texteditor. Contoh text editor yang dapat digunakan antara lain : Netbeans, notepad, vi, emacs dan lain sebagainya.Kode program yang dibuat kemudian tersimpan dalam sebuah berkas berekstensi .java. Setelah membuat dan menyimpan kode program,kompilasi file yang berisi kode program tersebut dengan menggunakan JavaCompiler. Hasildari kompilasi berupa berkas byte code dengan ekstensi .class. Berkas yang mengandung byte code tersebut kemudian akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan.
Tujuan belajar OOP bahasa Java :
Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada texteditor. Contoh text editor yang dapat digunakan antara lain : Netbeans, notepad, vi, emacs dan lain sebagainya.Kode program yang dibuat kemudian tersimpan dalam sebuah berkas berekstensi .java. Setelah membuat dan menyimpan kode program,kompilasi file yang berisi kode program tersebut dengan menggunakan JavaCompiler. Hasildari kompilasi berupa berkas byte code dengan ekstensi .class. Berkas yang mengandung byte code tersebut kemudian akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan.
Tujuan belajar OOP bahasa Java :
1) Mengidentifikasi bagian dasar dari program Java.
2) Memahami perbedaan antara syntax error dan runtime error.
3) Menganalisis Java literal, keyword,tipe data dasar, dan tipe variabel
1) Bagan dasar program java
1. Package
Perintah java yang digunakan untuk memberitahukan bahwa suatu class adalah anggota dari package, sedangkan namaPackage dapat berupa susunan direktori tempat dimana file class disimpan atau nama folder.
2. Import
Perintah import digunakan untuk memberitahukan kepada program untuk mengacu pada class-class yang terdapat pada package tersebut dan bukan menjalankan class-class tersebut. Dalam program, dapat diimport classclass tertentu saja dan dapat pula mengimport semua class yang terdapat pada package.
3. Class
Merupakan bentuk logis yang menjadi landasan bangun seluruh bahasa pemograman berorientasi object. Class mendefinisikan bentuk dan perilaku object. Class merupakan contoh abstrak dari sebuah object yang telah terbentuk dari proses penyederhanaan. Dengan kata lain class merupakan cikal bakal dari object. Kemudian contoh nyata atau perwujudan dari sebuah object dinamakan instance.
4. Data dan Methode
Data merupakan identitas yang berupa variabel yang menjelaskan properti dari class. Metoda adalah sekumpulan instruksi untuk menjalankan data yang diberi nama dan dapat dipanggil dari manapun di dalam program dengan menuliskan nama metoda tersebut.
5. Program utama Salah satu metoda yang paling penting di dalam bahasa Java adalah metoda main. Metoda main harus dideklarasikan sendiri oleh programmer di dalam sebuah kelas. Kelas yang mempunyai metoda main disebut dengan kelas main (main class), - kelas utama, - akan tetapi tidak semua kelas Java harus mempunyai metoda main.
Semua program kecuali applet yang ditulis dalam bahasa Java dimulai dengan method utama.
Metode main() didefinisikan sebagai public static void:
public, berarti metode ini dapat dipanggil dari luar class
static, menunjukkan metode ini bersifat sama untuk semua class atau method yang dapat dipakai tanpa harus menginisialisasi suatu class (maksudnya tanpa menggunakan variabel terlebih dahulu)
void, berarti metode ini tidak mengembalikan nilai.
Argument args[] adalah array objek string argument baris-baris perintah
ELEMEN-ELEMEN DASAR DALAM BAHASA JAVA
1. Komentar.
a. Untuk satu baris komentar adalah // ini komentar satu baris
b. Untuk beberapa baris komenar adalah : /* dan diakhri dengan */
c. Untuk keperluan dokumentasi : tandanya adalah /** dan diakhiri */ ini digunakan untuk program java doc
2. Blok Program
Yaitu suatu tanda untuk mengelompokan satu atau lebih statemen(pernyataan/perintah) kedalam satu blok program. Caranya yaitu dengan menggunan tanda { dan } <- braces
3. Separator
Meliputi :
1. Simbol ( ) dinamakan Parentheses atau tanda kurung, tanda ini berguna untuk mengisikan daftar parameter di dalam method atau untuk mengapit sebuah eskpresi dalam operasi tertentu (misal operasi aritmatika)
2. Simbol { } dinamakan Braces atau namanya kurung kurawal berguna untuk membuat blok program seperti kelas, method, kontrol pemilihan, kontrol pengulangan dan digunakan juga untuk mengisikan nilai inisial pada deklarasi array. contoh array : int[] A = { 1, 2, 3 };
3. Simbol [ ] dinamakan Bracket atau dinamai kurung siku berguna untuk mendeklarasikan sebuah array dan untuk mengambil / mengisi nilai dari suatu elemen array.
contoh :
int[] B = new int[5];
B[1] = 10 , B[2] = 15;
4. Simbol ; Dinamakan semicolon atau dinamakan titik koma. Berguna untuk memisahkan statement atau perintah atau pernyataan.
contoh :
c = a ; a=b ; b= c ;
5. Simbol , dinamakan comma atau dinamakan koma. Digunakan untuk memisahkan variabel pada saat deklarasi. Juga digunakan untuk membuat perintah/pernyataan looping atau for .
contoh :
int a, b, c ;
for (int i = 0; i < 3; i++, b + = 4)
{ ..... }
6. Simbol . dinamakan Period atau dinamakan titik. Berguna untuk memisahkan nama paket, subpaket, dan kelas. Simbol titik ini berguna pula untuk memisahkan data/method dari sebuah referensi objek.
Contoh:
import java.io.IOException;
obj.x = 4;
obj.getX( );
4. Kata Kunci (Reserved word)
Kata kunci adalah kata kata yang telah didefinisikan oleh compiler dan memilliki arti dan tujuan yang spesifik.
Kata ini tidak boleh digunakan untuk membuat suatu variabel (pengenal/identifier), konstanta, kelas, maupun method
Contoh kata : abstract, duble, int, super, this, throw, try, void, while, return, new, lont, import, if, goto, for
Penamaan variable dalam java
3. Class
Merupakan bentuk logis yang menjadi landasan bangun seluruh bahasa pemograman berorientasi object. Class mendefinisikan bentuk dan perilaku object. Class merupakan contoh abstrak dari sebuah object yang telah terbentuk dari proses penyederhanaan. Dengan kata lain class merupakan cikal bakal dari object. Kemudian contoh nyata atau perwujudan dari sebuah object dinamakan instance.
4. Data dan Methode
Data merupakan identitas yang berupa variabel yang menjelaskan properti dari class. Metoda adalah sekumpulan instruksi untuk menjalankan data yang diberi nama dan dapat dipanggil dari manapun di dalam program dengan menuliskan nama metoda tersebut.
5. Program utama Salah satu metoda yang paling penting di dalam bahasa Java adalah metoda main. Metoda main harus dideklarasikan sendiri oleh programmer di dalam sebuah kelas. Kelas yang mempunyai metoda main disebut dengan kelas main (main class), - kelas utama, - akan tetapi tidak semua kelas Java harus mempunyai metoda main.
Semua program kecuali applet yang ditulis dalam bahasa Java dimulai dengan method utama.
Metode main() didefinisikan sebagai public static void:
public, berarti metode ini dapat dipanggil dari luar class
static, menunjukkan metode ini bersifat sama untuk semua class atau method yang dapat dipakai tanpa harus menginisialisasi suatu class (maksudnya tanpa menggunakan variabel terlebih dahulu)
void, berarti metode ini tidak mengembalikan nilai.
Argument args[] adalah array objek string argument baris-baris perintah
a. Untuk satu baris komentar adalah // ini komentar satu baris
b. Untuk beberapa baris komenar adalah : /* dan diakhri dengan */
c. Untuk keperluan dokumentasi : tandanya adalah /** dan diakhiri */ ini digunakan untuk program java doc
2. Blok Program
Yaitu suatu tanda untuk mengelompokan satu atau lebih statemen(pernyataan/perintah) kedalam satu blok program. Caranya yaitu dengan menggunan tanda { dan } <- braces
3. Separator
Meliputi :
1. Simbol ( ) dinamakan Parentheses atau tanda kurung, tanda ini berguna untuk mengisikan daftar parameter di dalam method atau untuk mengapit sebuah eskpresi dalam operasi tertentu (misal operasi aritmatika)
2. Simbol { } dinamakan Braces atau namanya kurung kurawal berguna untuk membuat blok program seperti kelas, method, kontrol pemilihan, kontrol pengulangan dan digunakan juga untuk mengisikan nilai inisial pada deklarasi array. contoh array : int[] A = { 1, 2, 3 };
3. Simbol [ ] dinamakan Bracket atau dinamai kurung siku berguna untuk mendeklarasikan sebuah array dan untuk mengambil / mengisi nilai dari suatu elemen array.
contoh :
int[] B = new int[5];
B[1] = 10 , B[2] = 15;
4. Simbol ; Dinamakan semicolon atau dinamakan titik koma. Berguna untuk memisahkan statement atau perintah atau pernyataan.
contoh :
c = a ; a=b ; b= c ;
5. Simbol , dinamakan comma atau dinamakan koma. Digunakan untuk memisahkan variabel pada saat deklarasi. Juga digunakan untuk membuat perintah/pernyataan looping atau for .
contoh :
int a, b, c ;
for (int i = 0; i < 3; i++, b + = 4)
{ ..... }
6. Simbol . dinamakan Period atau dinamakan titik. Berguna untuk memisahkan nama paket, subpaket, dan kelas. Simbol titik ini berguna pula untuk memisahkan data/method dari sebuah referensi objek.
Contoh:
import java.io.IOException;
obj.x = 4;
obj.getX( );
4. Kata Kunci (Reserved word)
Kata kunci adalah kata kata yang telah didefinisikan oleh compiler dan memilliki arti dan tujuan yang spesifik.
Kata ini tidak boleh digunakan untuk membuat suatu variabel (pengenal/identifier), konstanta, kelas, maupun method
Contoh kata : abstract, duble, int, super, this, throw, try, void, while, return, new, lont, import, if, goto, for
Penamaan variable dalam java
1. Tidak boleh mengandung spasi contoh “cetak volume” yang benar “cetakvolume”
2. Tidak boleh berupa angka / diawali oleh angka contoh “2dimensi” yang benar “dimensi2”
3. Tidak boleh mengandung karakter symbol kecuali “$”
4. Nama variable tidak boleh mengunakan kata yang sudah didefinisikan dalam bahasa java
5. Dalam satu blok program nama variable harus unik
6. Nama variable usahakan dapat dimengerti orang lain
Jobsheet Aritmatika Dasar dalam program Java
class DemoAritmetikaDasar {
public static void main(String[] args) {
System.out.println("Operasi aritmetika " +
"pada tipe integer");
int a = 2 + 1;
int b = a - 1;
int c = a * b;
int d = c / 3;
int e = -a;
System.out.println("Nilai a: " + a);
System.out.println("Nilai b: " + b);
System.out.println("Nilai c: " + c);
System.out.println("Nilai d: " + d);
System.out.println("Nilai e: " + e);
System.out.println();
System.out.println("Operasi aritmetika " +
"pada tipe floating-point");
double fa = 2 + 1;
double fb = fa - 1;
double fc = fa * fb;
double fd = fc / 3;
double fe = -a;
System.out.println("Nilai fa: " + fa);
System.out.println("Nilai fb: " + fb);
System.out.println("Nilai fc: " + fc);
System.out.println("Nilai fd: " + fd);
System.out.println("Nilai fe: " + fe);
}
}
Jobsheet Modulus / sisa hasil bagi dalam program Java
class DemoModulus {
public static void main(String[] args) {
int a=11, b=4;
int c = a % b;
double da = 13.75;
double dc = da % b;
System.out.println("Sisa bagi " + a + "/" + b +
" adalah " + c);
System.out.println("Sisa bagi " + da + "/" + b +
" adalah " + dc);
}
}
Jobsheet Increment (pertambahan) dalam program Java
class DemoIncrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-increment");
System.out.println("a\t: " + a);
System.out.println("++a\t: " + ++a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-increment");
System.out.println("b\t: " + b);
System.out.println("b++\t: " + b++);
System.out.println("b\t: " + b);
}
}
Jobsheet Decrement (pengurangan) dalam program Java
class DemoDecrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-decrement");
System.out.println("a\t: " + a);
System.out.println("--a\t: " + --a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-decrement");
System.out.println("b\t: " + b);
System.out.println("b--\t: " + b--);
System.out.println("b\t: " + b);
}
}
Jobsheet Relational dalam program Java
class DemoRelasional {
public static void main(String[] args) {
int a=5, b=10;
System.out.println("a == b bernilai " + (a == b));
System.out.println("a != b bernilai " + (a != b));
System.out.println("a > b bernilai " + (a > b));
System.out.println("a < b bernilai " + (a < b));
System.out.println("a >= b bernilai " + (a >= b));
System.out.println("a <= b bernilai " + (a <= b));
}
}
Jobsheet Operator Logika dalam program Java
class DemoOperatorLogika {
public static void main(String[] args) {
System.out.println("Operasi AND");
System.out.println("true && true = " + (true && true));
System.out.println("true && false = " + (true && false));
System.out.println("false && true = " + (false && true));
System.out.println("false && false = " + (false && false));
System.out.println("\nOperasi OR");
System.out.println("true || true = " + (true || true));
System.out.println("true || false = " + (true || false));
System.out.println("false || true = " + (false || true));
System.out.println("false || false = " + (false || false));
System.out.println("\nOperasi XOR");
System.out.println("true ^ true = " + (true ^ true));
System.out.println("true ^ false = " + (true ^ false));
System.out.println("false ^ true = " + (false ^ true));
System.out.println("false ^ false = " + (false ^ false));
System.out.println("\nOperasi NOT");
System.out.println("!true = " + (!true));
System.out.println("!false = " + (!false));
}
}
1. Tidak boleh mengandung spasi contoh “cetak volume” yang benar “cetakvolume”
2. Tidak boleh berupa angka / diawali oleh angka contoh “2dimensi” yang benar “dimensi2”
3. Tidak boleh mengandung karakter symbol kecuali “$”
4. Nama variable tidak boleh mengunakan kata yang sudah didefinisikan dalam bahasa java
5. Dalam satu blok program nama variable harus unik
6. Nama variable usahakan dapat dimengerti orang lain
Jobsheet Aritmatika Dasar dalam program Java
class DemoAritmetikaDasar {
public static void main(String[] args) {
System.out.println("Operasi aritmetika " +
"pada tipe integer");
int a = 2 + 1;
int b = a - 1;
int c = a * b;
int d = c / 3;
int e = -a;
System.out.println("Nilai a: " + a);
System.out.println("Nilai b: " + b);
System.out.println("Nilai c: " + c);
System.out.println("Nilai d: " + d);
System.out.println("Nilai e: " + e);
System.out.println();
System.out.println("Operasi aritmetika " +
"pada tipe floating-point");
double fa = 2 + 1;
double fb = fa - 1;
double fc = fa * fb;
double fd = fc / 3;
double fe = -a;
System.out.println("Nilai fa: " + fa);
System.out.println("Nilai fb: " + fb);
System.out.println("Nilai fc: " + fc);
System.out.println("Nilai fd: " + fd);
System.out.println("Nilai fe: " + fe);
}
}
Jobsheet Modulus / sisa hasil bagi dalam program Java
class DemoModulus {
Jobsheet Increment (pertambahan) dalam program Java
class DemoIncrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-increment");
System.out.println("a\t: " + a);
System.out.println("++a\t: " + ++a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-increment");
System.out.println("b\t: " + b);
System.out.println("b++\t: " + b++);
System.out.println("b\t: " + b);
}
}
Jobsheet Decrement (pengurangan) dalam program Java
class DemoDecrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-decrement");
System.out.println("a\t: " + a);
System.out.println("--a\t: " + --a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-decrement");
System.out.println("b\t: " + b);
System.out.println("b--\t: " + b--);
System.out.println("b\t: " + b);
}
}
Jobsheet Relational dalam program Java
class DemoRelasional {
public static void main(String[] args) {
int a=5, b=10;
System.out.println("a == b bernilai " + (a == b));
System.out.println("a != b bernilai " + (a != b));
System.out.println("a > b bernilai " + (a > b));
System.out.println("a < b bernilai " + (a < b));
System.out.println("a >= b bernilai " + (a >= b));
System.out.println("a <= b bernilai " + (a <= b));
}
}
Jobsheet Operator Logika dalam program Java
class DemoOperatorLogika {
public static void main(String[] args) {
System.out.println("Operasi AND");
System.out.println("true && true = " + (true && true));
System.out.println("true && false = " + (true && false));
System.out.println("false && true = " + (false && true));
System.out.println("false && false = " + (false && false));
System.out.println("\nOperasi OR");
System.out.println("true || true = " + (true || true));
System.out.println("true || false = " + (true || false));
System.out.println("false || true = " + (false || true));
System.out.println("false || false = " + (false || false));
System.out.println("\nOperasi XOR");
System.out.println("true ^ true = " + (true ^ true));
System.out.println("true ^ false = " + (true ^ false));
System.out.println("false ^ true = " + (false ^ true));
System.out.println("false ^ false = " + (false ^ false));
System.out.println("\nOperasi NOT");
System.out.println("!true = " + (!true));
System.out.println("!false = " + (!false));
}
}
2. Tidak boleh berupa angka / diawali oleh angka contoh “2dimensi” yang benar “dimensi2”
3. Tidak boleh mengandung karakter symbol kecuali “$”
4. Nama variable tidak boleh mengunakan kata yang sudah didefinisikan dalam bahasa java
5. Dalam satu blok program nama variable harus unik
6. Nama variable usahakan dapat dimengerti orang lain
Jobsheet Aritmatika Dasar dalam program Java
class DemoAritmetikaDasar {
public static void main(String[] args) {
System.out.println("Operasi aritmetika " +
"pada tipe integer");
int a = 2 + 1;
int b = a - 1;
int c = a * b;
int d = c / 3;
int e = -a;
System.out.println("Nilai a: " + a);
System.out.println("Nilai b: " + b);
System.out.println("Nilai c: " + c);
System.out.println("Nilai d: " + d);
System.out.println("Nilai e: " + e);
System.out.println();
System.out.println("Operasi aritmetika " +
"pada tipe floating-point");
double fa = 2 + 1;
double fb = fa - 1;
double fc = fa * fb;
double fd = fc / 3;
double fe = -a;
System.out.println("Nilai fa: " + fa);
System.out.println("Nilai fb: " + fb);
System.out.println("Nilai fc: " + fc);
System.out.println("Nilai fd: " + fd);
System.out.println("Nilai fe: " + fe);
}
}
Jobsheet Modulus / sisa hasil bagi dalam program Java
class DemoModulus {
public static void main(String[] args) {
int a=11, b=4;
int c = a % b;
double da = 13.75;
double dc = da % b;
System.out.println("Sisa bagi " + a + "/" + b +
" adalah " + c);
System.out.println("Sisa bagi " + da + "/" + b +
" adalah " + dc);
}
}
Jobsheet Increment (pertambahan) dalam program Java
class DemoIncrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-increment");
System.out.println("a\t: " + a);
System.out.println("++a\t: " + ++a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-increment");
System.out.println("b\t: " + b);
System.out.println("b++\t: " + b++);
System.out.println("b\t: " + b);
}
}
Jobsheet Decrement (pengurangan) dalam program Java
class DemoDecrement {
public static void main(String[] args) {
int a=5;
System.out.println("Pre-decrement");
System.out.println("a\t: " + a);
System.out.println("--a\t: " + --a);
System.out.println("a\t: " + a);
int b=5;
System.out.println("\nPost-decrement");
System.out.println("b\t: " + b);
System.out.println("b--\t: " + b--);
System.out.println("b\t: " + b);
}
}
Jobsheet Relational dalam program Java
class DemoRelasional {
public static void main(String[] args) {
int a=5, b=10;
System.out.println("a == b bernilai " + (a == b));
System.out.println("a != b bernilai " + (a != b));
System.out.println("a > b bernilai " + (a > b));
System.out.println("a < b bernilai " + (a < b));
System.out.println("a >= b bernilai " + (a >= b));
System.out.println("a <= b bernilai " + (a <= b));
}
}
Jobsheet Operator Logika dalam program Java
public static void main(String[] args) {
System.out.println("Operasi AND");
System.out.println("true && true = " + (true && true));
System.out.println("true && false = " + (true && false));
System.out.println("false && true = " + (false && true));
System.out.println("false && false = " + (false && false));
System.out.println("\nOperasi OR");
System.out.println("true || true = " + (true || true));
System.out.println("true || false = " + (true || false));
System.out.println("false || true = " + (false || true));
System.out.println("false || false = " + (false || false));
System.out.println("\nOperasi XOR");
System.out.println("true ^ true = " + (true ^ true));
System.out.println("true ^ false = " + (true ^ false));
System.out.println("false ^ true = " + (false ^ true));
System.out.println("false ^ false = " + (false ^ false));
System.out.println("\nOperasi NOT");
System.out.println("!true = " + (!true));
System.out.println("!false = " + (!false));
}
}
Input dan Output Dalam Java
Java menghadirkan dukungan terhadap proses input dan output melalui paket java.io. didalam paket tersebut tersimpan banyak class dan interface yang memudahkan programmer untuk membuat program.
Fungsi paket java.io adalah untuk mengambil dan atau menyimpan informasi dari / ke media yang ada misalnya tulis dan baca ke file, printer.
Program java melakukan proses I/O melalui Stream yaitu sebuah abstraksi yang dapat memberikan atau mendapatkan informasi, stream ini dapat juga terhubung dengan peralatan fisik yang terdapat dalam system I/O seperti keyboard, file, dan layar monitor
Ada dua tipe stream yaitu;
1. Stream byte digunakan untuk menulis dan membaca bertipe file biner.
2. Stream character digunakan untuk melakukan proses I/O yang melibatkan data dalam bentuk character. .
contoh: read/write text yang menggunakan character Unicode
Dalam java, stream didefinisikan dengan menggunakan 4 class abstrak yaitu;
1. InputStream
2. OutputStream
3. Reader
4. Writer
InputStream dan OutputStream merupakan class abstrak yang dirancang sebagai induk class atau superclass untuk class-class yang termasuk kedalam kategori stream byte.
Sedangkan kategori stream character terdiri dari class reader dan writer
Melalui proses pewarisan atau inheritance, Semua class yang diturunkan dari input stream maupun reader akan memiliki method read(), yang akan digunakan untuk proses pembacaan data.
Adapun semua class yang diturunkan dari output stream maupun writer akan memiliki method write(), Yang digunakan untuk penulisan data.
Kelas-kelas dalam stream byte
contoh: read/write text yang menggunakan character Unicode
Dalam java, stream didefinisikan dengan menggunakan 4 class abstrak yaitu;
Melalui proses pewarisan atau inheritance, Semua class yang diturunkan dari input stream maupun reader akan memiliki method read(), yang akan digunakan untuk proses pembacaan data.
Adapun semua class yang diturunkan dari output stream maupun writer akan memiliki method write(), Yang digunakan untuk penulisan data.
Kelas-kelas dalam stream byte
1. BufferedInputStream : Stream input yang telah terbuffer(ada pada memory RAM)
2. BufferedOutputStream: Stream output yang telah terbuffer
3. ByteArrayInputStream : Stream input yang membaca dari arraybyte
4. ByteArrayOuputStream: Stream output yang menulis ke arraybyte
5. DataInputStream: Stream input yang berisi method-method untuk membaca tipe data strandar yang terdapat dalam Java.
6. DataOutputStream: Stream output yang berisi method-method untuk menuliskan tipe data standar yang terdapat dalam Java.
7. FileInputStream: Stream input yang membaca dari sebuah file
8. FileOutputStream: Stream output yang menulis ke sebuah file
9. InputStream : Kelas abstrak yang menjelaskan stream output
10. OutputStream : Kelas abstrak yang menjelaskan stream output
11. PipedInputStream : Penyalur input
12. PipedoutStream : Penyalur output
13. PrintStream : Stream out yang berisi method println() an print()
Kelas-kelas dalam stream karakter.
Daftar kelas stream karakter yang ada dalam peket java.io
1. BufferedReader : yaitu stream karakter input yang telah terbuffer
2. BufferedWriter : yang karakter output yang telah terbuffer.
3. CharArrayReader: yaitu stream input yang membaca dari array karakter.
4. CharArrayWriter : yaitu stream ouput yang menulis ke array karakter
5. FileReader : yaitu stream input yang membaca dari file.
6. FileWriter : yaitu stream ouput yang menulisk ke file.
7. InputStreamReader : stream input yang menterjemahan byte ke dalam karakter
8. LineNumberReader : stream yang menghitung jumlah baris
9. OuputStreamWriter : stream yang menterjemahkan karakter ke dalam byte
10. PrintWriter : stream output yang berisi method print() dan println()
Kelas-kelas dalam stream karakter.
Daftar kelas stream karakter yang ada dalam peket java.io
Stream Terdefinisi.
Semua program java secara otomatis akan mengimpor paket java.lang. Yaitu paket yang mendefinisikan kelas yang dinamakan dengan System, kelas ini erat kaitannya dengan program pada saat ‘runtime’ (saat program dijalankan).
Kelas System ini mendefinisikan tiga buah variable stream, yaitu : in, out, dan err.
Field atau data tersebut dideklarasikan sebagai public dan static. Hal ini menyebabkan variable tersebut dapat digunakan tanpa harus membentuk objek dari kelas system terlebih dahulu.
System.out mengacau pada stream output standar, yang secara ‘default’nya berupa layar monitor. Sedangkan System.in mengacu pada stream input strandar yaitu keyboard; dan System.err mengacu pada stream error standar, yang ditampilkan pada layar monitor.
System.in adalah objek dari tipe InputStream, sedangkan System.out dan System.err adalah objek dari tipe PrintStream.
Cara kerja dari System.err yaitu jika pada saat ‘runtime’ program ada kesalahan maka method ini akan mengeluarkan pesan kesalahan ke layar monitor, sintaknya seperti berikut.
Try {
if ( obj == null ) throw new NullPointerException();
}
catch (Exception e ) {
e.printStackTrace(System.err) ;
}
Kelas System ini mendefinisikan tiga buah variable stream, yaitu : in, out, dan err.
Field atau data tersebut dideklarasikan sebagai public dan static. Hal ini menyebabkan variable tersebut dapat digunakan tanpa harus membentuk objek dari kelas system terlebih dahulu.
Try {
if ( obj == null ) throw new NullPointerException();
}
catch (Exception e ) {
e.printStackTrace(System.err) ;
}
INPUT CONSOLE DALAM JAVA
Proses input melalui keyboard ini dilakukan melalui pembacaan terhadap stream System.in. Stream ini kemudian dibungkus di dalam objek BufferedReader. Hal ini dilakukan karena stream System.in merupakan stream byte, bukan stream karakter. Tanpa dilakukan proses ini maka apapun yang dimasukan melalui keyboard akan dianggap byte, bukan karakter
Adapun bentuk konstruktor dari BufferedReader sebagai berikut.
BufferedReader(Reader inputReader)
inputReader adalah stream yang akan dihubungkan dengan instance atau objek dari kelas BufferedReader yang dibuat. Karena Reader merupakan kelas abstrak maka perlu diturunkan ke dalam kelas yang lebih kongkrit, yaitu kelas InputStreamReader. Agar objek InputStreamReader dapat dihubungkan dengan System.in ;
Adapun bentuk konstruktornya sbb :
InputStreamReader(InputStream inputStream)
Di sini, inputStream dapat kita isi dengan System.in ;
Dengan demikian, untuk membuat objek BufferredReader yang terhubung ke keyboard, kita gunakan kode berikut :
BufferedReader br ;
br = new BufferedReader(new InputStreamReader(System.in));
Atau bentuk terurainya :
InputStreamReader isr ;
isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
Objek br sekarang sudah dapat digunakan untuk melakukan proses input; yaitu dengan melakukan pemanggilan terhadap method read() maupun readline().
Adapun bentuk konstruktor dari BufferedReader sebagai berikut.
inputReader adalah stream yang akan dihubungkan dengan instance atau objek dari kelas BufferedReader yang dibuat. Karena Reader merupakan kelas abstrak maka perlu diturunkan ke dalam kelas yang lebih kongkrit, yaitu kelas InputStreamReader. Agar objek InputStreamReader dapat dihubungkan dengan System.in ;
Adapun bentuk konstruktornya sbb :
Di sini, inputStream dapat kita isi dengan System.in ;
Dengan demikian, untuk membuat objek BufferredReader yang terhubung ke keyboard, kita gunakan kode berikut :
BufferedReader br ;
br = new BufferedReader(new InputStreamReader(System.in));
Atau bentuk terurainya :
InputStreamReader isr ;
isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
Objek br sekarang sudah dapat digunakan untuk melakukan proses input; yaitu dengan melakukan pemanggilan terhadap method read() maupun readline().
MEMBACA INPUT DATA KARAKTER
Digunakan method read() yang ada pada kelas BufferedReader. Deklarasinya sebagai berikut :
int read() throws IOException
Contoh :
//PROGRAM INPUT DATA KARAKTER (simpan file ini dengan nama InputKarakter)
import java.io.*;
class InputKarakter {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan sembarang karakter: ");
char ch;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
ch = (char) br.read();
System.out.println("Karakter yang dimasukkan adalah \'" +
ch + "\'");
}
}
MEMBACA INPUT DATA STRING
int read() throws IOException
//PROGRAM INPUT DATA KARAKTER (simpan file ini dengan nama InputKarakter)
System.out.print("Masukkan sembarang karakter: ");
char ch;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
ch = (char) br.read();
System.out.println("Karakter yang dimasukkan adalah \'" +
ch + "\'");
Method yang digunakan adalah method readline(), bukan read()
Deklarasi nya sbb : StringreadLine() throws IOExceptionContoh :
//PROGRAM INPUT DATA STRING
import java.io.*;
class InputString {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan nama Anda: ");
String nama;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br;
br = new BufferedReader(isr);
nama = br.readLine();
System.out.print("Masukkan Kelas Anda: ");
String kelas;
InputStreamReader ikls = new InputStreamReader(System.in);
BufferedReader brkls = new BufferedReader(ikls);
kelas = brkls.readLine();
System.out.println("Halo " + nama + ", Kamu Kelas "+ kelas + " RPL ya? Ih Keren! ");
}
}
MEMBACA INPUT DATA NUMERIK
Caranya sama dengan input data string hanya string hasil input tersebut dikonversikan ke type numerik.
Contoh :
//PROGRAM INPUT DATA NUMERIK (bilangan bulat)
import java.io.*;
class InputNumerik1 {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan sebuah bilangan bulat: ");
String temp;
int bilangan = 0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// input data dianggap sebagai string
temp = br.readLine();
try {
// konversi dari string ke integer
bilangan = Integer.parseInt(temp);
} catch (NumberFormatException nfe) {
System.out.println("Data yang dimasukkan " +
"bukan bilangan bulat");
System.exit(1);
}
System.out.println("Bilangan yang dimasukkan " +
"adalah " + bilangan);
}
}
// contoh 2: PROGRAM INPUT OUTPUT NUMERIK (bilangan real / floatingpoint)
import java.io.*;
class DemoInputNumerik2 {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan sebuah bilangan riil: ");
String temp;
double bilangan = 0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// input data dianggap sebagai string
temp = br.readLine();
try {
// konversi dari string ke floating-point
bilangan = Double.parseDouble(temp);
} catch (NumberFormatException nfe) {
System.out.println("Data yang dimasukkan bukan bilangan");
System.exit(1);
}
System.out.println("Bilangan yang dimasukkan " +
"adalah " + bilangan);
}
}
MEMBUAT PAKET JAVA
Paket java adalah tempat yang digunakan untuk membungkus kelas-kelas dan interface-interface dari sekumpulan program yang dibuat. Paket ini dapat diimpor ke dalam kode program untuk digunakan sesuai kebutuhan.
Kegunaan paket adalah menghindari kesamaan nama dari kelas-kelas yang dibuat.
Cara membuat paket yaitu dengan menggunakan statemen package diikuti dengan nama paket yang digunakan di bagian paling atas dari file kode yang kita tulis.
Syarat nama package :
- Diawali huruf kecil
- Menggambarkan kelas-kelas yang dibungkusnya
- Harus unik (berbeda dengan nama package standard) Merepresentasikan path dari package tersebut.
- Harus sama dengan nama direktorinya
Langkah-Langkah Membuat Paket Java :
- Mendeklarasikan dan memberi nama package.
- Membuat struktur dan nama direktori yang sesuai dengan struktur dan nama package.
- Mengkompilasi kelas-kelas sesuai dengan packagenya masing-masing.
Buat direktori atau folder PaketCon di drive D, misalkan :
D:
CD latihjava
MD PaketCon
aktifkan direktori PaketCon
CD PaketCon
Buat file dengan nama Lingkaran.java dan simpan dalam direktori d:\Latihjava\PaketCon
Package PaketCon
public class Lingkaran {
private final double PI = 3.1416;
private double r;
public Lingkaran (double r ) {
this.r = r;
}
public double luas() {
return(PI * r * r);
}
public double keliling() {
return (2 * PI * r );
}
}
Kemudian buat file Segitiga.java simpan dalam folder PaketCon
package PaketCon;
public class Segitiga {
private double tinggi;
private double alas;
public Segitiga(double tinggi, double alas) {
this.tinggi = tinggi;
this.alas = alas;
}
public double luas() {
return ((tinggi * alas)/2);
}
Notes : kata kunci this. digunakan untuk menyatakan objek sekarang dalam suatu kelas.
MENGIMPOR PAKET KE DALAM PROGRAM
Aktifkan direktori D:\Latihjava dengan menggunakan perintah
D:
cd Latihjava
Buat file baru (misalkan) PanggilPaket.java kemudian simpan dalam direktori d:\Latihjava.
import PaketCon.*;
class PanggilPaket {
public static void main(String[] args) {
Lingkaran obLingkaran = new Lingkaran(7);
Segitiga obSegitiga = new Segitiga(4, 3);
System.out.println("Luas lingkaran : " + obLingkaran.luas());
System.out.println("Keliling lingkaran : " + obLingkaran.keliling());
System.out.println("Luas Segitiga : " + obSegitiga.luas());
}
INTERFACE
Interface adalah abstraksi murni dari sekumpulan method. Implementasi dari method di interface dilakukan oleh kelas-kelas yang mengimplementasikan interface tersebut.
Perbedaan interface dan kelas abstrak
- Kelas abstrak mengandung metode abstrak dan tidak abstrak, sedangkan interface harus semuanya metode abstrak.
- Kelas abstrak dapat memiliki atribut, sedangkan interface tidak boleh.
- Kelas abstrak digunakan oleh kelas lain menggunakan pewarisan (extends), sedangkan interface menggunakan implementasi (implements).
Contoh
import java.io.*;
interface Hari {
int MINGGU = 1;
int SENIN = 2;
int SELASA = 3;
int RABU = 4;
int KAMIS = 5;
int JUMAT = 6;
int SABTU = 7;
}
class VarInterface implements Hari {
public static void main(String[] args) {
String sInput = null;
System.out.print("Masukkan nomor hari (1..7): ");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
try {
sInput = br.readLine();
int i = Integer.parseInt(sInput);
String namaHari = null;
switch (i) {
case MINGGU : namaHari = "Minggu"; break;
case SENIN : namaHari = "Senin"; break;
case SELASA : namaHari = "Selasa"; break;
case RABU : namaHari = "Rabu"; break;
case KAMIS : namaHari = "Kamis"; break;
case JUMAT : namaHari = "Jumat"; break;
case SABTU : namaHari = "Sabtu"; break;
}
System.out.println("Hari ke-" + i +
" adalah " + namaHari);
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
Deklarasi nya sbb : StringreadLine() throws IOExceptionContoh :
//PROGRAM INPUT DATA STRING
//PROGRAM INPUT DATA STRING
import java.io.*;
class InputString {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan nama Anda: ");
String nama;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br;
br = new BufferedReader(isr);
nama = br.readLine();
System.out.print("Masukkan Kelas Anda: ");
String kelas;
InputStreamReader ikls = new InputStreamReader(System.in);
BufferedReader brkls = new BufferedReader(ikls);
kelas = brkls.readLine();
System.out.println("Halo " + nama + ", Kamu Kelas "+ kelas + " RPL ya? Ih Keren! ");
}
}
MEMBACA INPUT DATA NUMERIK
//PROGRAM INPUT DATA NUMERIK (bilangan bulat)
Caranya sama dengan input data string hanya string hasil input tersebut dikonversikan ke type numerik.
Contoh :
import java.io.*;
class InputNumerik1 {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan sebuah bilangan bulat: ");
String temp;
int bilangan = 0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// input data dianggap sebagai string
temp = br.readLine();
try {
// konversi dari string ke integer
bilangan = Integer.parseInt(temp);
} catch (NumberFormatException nfe) {
System.out.println("Data yang dimasukkan " +
"bukan bilangan bulat");
System.exit(1);
}
System.out.println("Bilangan yang dimasukkan " +
"adalah " + bilangan);
}
}
// contoh 2: PROGRAM INPUT OUTPUT NUMERIK (bilangan real / floatingpoint)
import java.io.*;
class DemoInputNumerik2 {
public static void main(String[] args) throws IOException {
System.out.print("Masukkan sebuah bilangan riil: ");
String temp;
double bilangan = 0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// input data dianggap sebagai string
temp = br.readLine();
try {
// konversi dari string ke floating-point
bilangan = Double.parseDouble(temp);
} catch (NumberFormatException nfe) {
System.out.println("Data yang dimasukkan bukan bilangan");
System.exit(1);
}
System.out.println("Bilangan yang dimasukkan " +
"adalah " + bilangan);
}
}
MEMBUAT PAKET JAVA
Paket java adalah tempat yang digunakan untuk membungkus kelas-kelas dan interface-interface dari sekumpulan program yang dibuat. Paket ini dapat diimpor ke dalam kode program untuk digunakan sesuai kebutuhan.
Kegunaan paket adalah menghindari kesamaan nama dari kelas-kelas yang dibuat.
Cara membuat paket yaitu dengan menggunakan statemen package diikuti dengan nama paket yang digunakan di bagian paling atas dari file kode yang kita tulis.
Syarat nama package :
Syarat nama package :
- Diawali huruf kecil
- Menggambarkan kelas-kelas yang dibungkusnya
- Harus unik (berbeda dengan nama package standard) Merepresentasikan path dari package tersebut.
- Harus sama dengan nama direktorinya
- Mendeklarasikan dan memberi nama package.
- Membuat struktur dan nama direktori yang sesuai dengan struktur dan nama package.
- Mengkompilasi kelas-kelas sesuai dengan packagenya masing-masing.
Buat direktori atau folder PaketCon di drive D, misalkan :
D:
CD latihjava
MD PaketCon
aktifkan direktori PaketCon
CD PaketCon
Buat file dengan nama Lingkaran.java dan simpan dalam direktori d:\Latihjava\PaketCon
Package PaketCon
public class Lingkaran {
private final double PI = 3.1416;
private double r;
public Lingkaran (double r ) {
this.r = r;
}
public double luas() {
return(PI * r * r);
}
public double keliling() {
return (2 * PI * r );
}
}
Kemudian buat file Segitiga.java simpan dalam folder PaketCon
package PaketCon;
public class Segitiga {
private double tinggi;
private double alas;
public Segitiga(double tinggi, double alas) {
this.tinggi = tinggi;
this.alas = alas;
}
public double luas() {
return ((tinggi * alas)/2);
}
Notes : kata kunci this. digunakan untuk menyatakan objek sekarang dalam suatu kelas.
MENGIMPOR PAKET KE DALAM PROGRAM
Aktifkan direktori D:\Latihjava dengan menggunakan perintah
D:
cd Latihjava
Buat file baru (misalkan) PanggilPaket.java kemudian simpan dalam direktori d:\Latihjava.
import PaketCon.*;
class PanggilPaket {
public static void main(String[] args) {
Lingkaran obLingkaran = new Lingkaran(7);
Segitiga obSegitiga = new Segitiga(4, 3);
System.out.println("Luas lingkaran : " + obLingkaran.luas());
System.out.println("Keliling lingkaran : " + obLingkaran.keliling());
System.out.println("Luas Segitiga : " + obSegitiga.luas());
}
INTERFACE
Interface adalah abstraksi murni dari sekumpulan method. Implementasi dari method di interface dilakukan oleh kelas-kelas yang mengimplementasikan interface tersebut.
Perbedaan interface dan kelas abstrak
- Kelas abstrak mengandung metode abstrak dan tidak abstrak, sedangkan interface harus semuanya metode abstrak.
- Kelas abstrak dapat memiliki atribut, sedangkan interface tidak boleh.
- Kelas abstrak digunakan oleh kelas lain menggunakan pewarisan (extends), sedangkan interface menggunakan implementasi (implements).
Contoh
import java.io.*;
interface Hari {
int MINGGU = 1;
int SENIN = 2;
int SELASA = 3;
int RABU = 4;
int KAMIS = 5;
int JUMAT = 6;
int SABTU = 7;
}
class VarInterface implements Hari {
public static void main(String[] args) {
String sInput = null;
System.out.print("Masukkan nomor hari (1..7): ");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
try {
sInput = br.readLine();
int i = Integer.parseInt(sInput);
String namaHari = null;
switch (i) {
case MINGGU : namaHari = "Minggu"; break;
case SENIN : namaHari = "Senin"; break;
case SELASA : namaHari = "Selasa"; break;
case RABU : namaHari = "Rabu"; break;
case KAMIS : namaHari = "Kamis"; break;
case JUMAT : namaHari = "Jumat"; break;
case SABTU : namaHari = "Sabtu"; break;
}
System.out.println("Hari ke-" + i +
" adalah " + namaHari);
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
PENGETAHUAN UMUM PROGRAM JAVA
Pemrograman Java merupakan pemrograman berorientasi objek.
Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek.
Pemrograman java mendefinisikan tipe data dari sebuah struktur data dan jenis operasi (fungsi/method) yang ada kedalam suatu bentuk class.
Dengan cara ini, struktur data yang ada di dalam class diturunkan(instance/instantiasi) menjadi objek yang meliputi data dan fungsi yang ada dalam class tsb.
Selain itu, pemrogram dapat membuat hubungan antara satu objek dengan objek lainnya, objek dapat mewarisi karakteristik dari objek lain.
Object merupkana gabungan dari beberapa data dan fungsi yang masing-masing bekerja bersama-sama dan tidak dapat dipisahkan.
Gabungan dari data dan fungsi tersebut akan membentuk suatu object-object yang aktif. Dari suatu kumpulan class dapat dibuat beberapa object yang sama dan akan membentuk struktur baru.
Konsep dasar object (object Oriented) yang diturunkan dari suatu class meliputi tiga hal :
- Is Identical (because Object has own unique ID), yaitu object tersebut mempunyai identitas tersendiri dapat dibedakan dengan yang lain
- Has Behavior (because Object has Method), yaitu object itu mempunyai cara, aturan, prilaku atau sifat-sifat yang khusus tertentu.
- Has State (because Object has instance parameter), object mempunyai keadaan tertentu yang dapat menerima masukan dengan suatu ukuran tertentu
- Is-a (Generalization, Realization: Inheritance).: Hubungan bersifat umum, sifat bawaan
- Has-a (Association) : Hubunga atas dasar mempunyai kaitan asosiasi yang sama.
- Others (Association , Dependency) : Mempunyai keterkaitan
Setiap objek mempunyai sifat yang melekat pada identitasnya, sehingga dua objek dapat berbeda walaupun semua nilai atributnya identik.
contoh : Singa merupakan objek dari binatang buas, Manusia merupakan objek dari makhluk hidup,, keyboard merupakan objek dari perangkat keras komputer, mobil merupakan objek dari alat transportasi.
Klasifikasi berarti suatu kegiatan mengumpulkan data (atribut) dan prilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup yang disebut kelas. Sesuai dengan contoh di atas maka hewan buas, makhluk hidup, komputer, dan alat transportasi adalah contoh dari kelas.
Pemrograman prosedural
Fitur Pemrograman berorientasi prosedur:
contoh : Singa merupakan objek dari binatang buas, Manusia merupakan objek dari makhluk hidup,, keyboard merupakan objek dari perangkat keras komputer, mobil merupakan objek dari alat transportasi.
Klasifikasi berarti suatu kegiatan mengumpulkan data (atribut) dan prilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup yang disebut kelas. Sesuai dengan contoh di atas maka hewan buas, makhluk hidup, komputer, dan alat transportasi adalah contoh dari kelas.
Perbandingan Pemrograman Berorientasi Obyek dengan Pemrograman Terstruktur
Jenis paradigma dalam bahasa pemrograman meliputi 4 hal yaitu:
- Pemrograman tidak terstruktur atau Programming Monolithic
- Pemrograman prosedural
- Pemrograman struktural
- Pemrograman Berorientasi Objek
- Seluruh permasalahan ini diselesaikan sebagai blok tunggal.
- Semua data bersifat global dan tidak ada keamanan.
- Perintah melompat diperbolehkan dengan perintah jump dan banyak menggunakan perintah go to
- Cocok untuk permasalah kecil.
- Sulit untuk melacak kesalahan program
Pemrograman prosedural
- Masalah yang diberikan dibagi dalam beberapa sub masalah tergantung pada fungsinya.
- Sub masalah disebut prosedur atau Metode.
- Prosedur apapun dapat dipanggil pada setiap saat selama pelaksanaan program.
- Program ini memiliki variabel global dan lokal
Fitur Pemrograman berorientasi prosedur:
- Program besar yang terbagi dalam fungsi kecil atau Prosedur.
- Menggunakan Pendekatan pemrograman Top-Down.
- Data bergerak bebas dari satu fungsi ke yang lain.
- Sebagian besar fungsi berbagi data umum.
- Penekanan diberikan untuk algoritma.
Paradigma Pemrograman Berorientasi Objek
- Program ini dibagi menjadi jumlah unit kecil yang disebut Object.
Data dan fungsi merupakan properti objek. - Data dari objek hanya dapat diakses oleh fungsi yang terkait dengan objek tersebut.
- Fungsi satu objek dapat mengakses fungsi objek lain.
Fitur pemrograman berorientasi obyek
- Penekanan diberikan pada data daripada prosedur.
- Masalah dibagi menjadi obyek.
- Struktur data dirancang sedemikian rupa sehingga mereka mengatur objek.
- Data dan fungsi yang diikat bersama-sama.
- Penyembunyian data adalah mungkin.
- Data baru dan fungsi dapat dengan mudah dibuat.
- Obyek dapat berkomunikasi satu sama lain dengan menggunakan fungsi.
- Pendekatan bottom-up yang digunakan dalam membuat program
Perbedaan/perbandinga program strukural/prosedural dengan program Java
Pemrograman terstruktur
- Pendekatan top-down
- Fokus adalah pada algoritma dan kontrol aliran.Pemrograman
- Program dibagi menjadi beberapa sub modul atau fungsi atau prosedur.
- Fungsi yang independen satu sama lain.
- Tidak ada penerima yang ditunjuk dalam panggilan fungsi.
- Data dan fungsi sebagai dua entitas yang terpisah Views.
- Pemeliharaan mahal.
- Reuse Software tidak mungkin.
Pemrograman Java Berorientasi Obyek
- Pendekatan bottom-up yang diikuti.
- Fokus pada model objek.
- Program ini diselenggarakan dengan memiliki sejumlah kelas dan objek.
- Setiap kelas berhubungan secara hirarkis.
- Ada penerima yang ditunjuk untuk setiap lewat pesan.
- Data dan fungsi sebagai satu kesatuan pandangan.
- Pemeliharaan relatif lebih murah.
- Membantu dalam penggunaan kembali perangkat lunak.
Sejarah Pemrograman Bahasa Java
Java diciptakan oleh suatu tim yang dipimpin oleh Patrick Naughton dan James Gosling dalam suatu proyek dari Sun Micro system yang memiliki kode Green dengan tujuan untuk menghasilkan bahasa komputer sederhana yang dapat dijalankan di peralatan sederhana dengan tidak terikat pada arsitektur tertentu. Mulanya disebut OAK, tetapi karena OAK sendiri merupakan nama dari bahasa pemrograman komputer yang sudah ada. Maka Sun mengubahnya menjadi Java.Sun kemudian meluncurkan browser dari Java yang disebut Hot Java yang mampu menjalankan applet. Setelah itu teknologi Java diadopsi oleh Netscape yang memungkinkan program Java dijalankan di browser Netscape yang kemudian diikuti Internet Explorer.
Karena keunikanya dan kelebihanya, teknologi Java mulai menarik banyak vendor seperti IBM,Symantec, Inprise, dll.Sun merilis versi awal Java secara resmi pada awal tahun 1996 yang kemudian terus berkembang hingga muncul JDK 1.1, kemudian JDK 1.2 yang mulai disebut sebagai versi Java2 karena banyak mengandung peningkatan dan perbaikan.
Perubahan utama adalah adanya Swing yang merupakan teknologi GUI (Graphical User Interface ) yang mampu menghasilkan window yang portabel. Dan pada tahun 1998 – 1999 lahirlah teknologi J2EE.Diawali dengan servlet dan EJB kemudian diikuti JSP. Java juga menjadi lebih cepat populer di lingkungan server side dikarenakan kelebihanya di lingkungan
Arsitektur Teknologi Java
Sebagai sebuah platform, Java terdiri atas dua bagian utama, yaitu:
1. Java Virtual Machine (JVM)
JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi pada sebuah mesin nyata. 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 .class atau lebih.
Bytecode adalah serangkaian instruksi serupainstruksi kode mesin.Perbedaannya adalah kode mesin harus dijalankan pada sistem komputerdimana kompilasi ditujukan,sementara bytecode berjalan pada java interpreter yang tersedia di semua platform system komputer dan system operasii
2. Java Application Programming Interface (JavaAPI).

Ada tiga hal pokok dalam JVM: specification, implementation, and instance.
Suatu hal yang instans dari JVM adaadalah dapat menjalankan program yang telah di-compile dalam Jawa Bytecode. Java Bytecode adalah platform kode untuk eksekusi program Java.
Java bersifat neutral architecture karena dengan Java Compiler dapat mengkompilasi kode program Java yang dirancang untuk menghasilkan kode yang netral terhadap semua arsitektur perangkat keras yang disebut sebagai Java Bytecode
Dalam pemrograman komputer dikenal istilah application programming interface (API) yang merupakan sekumpulan rutin-rutin, protocols, and dan perangkat untuk membuat atau menciptakan suatu sofware aplikasi.
Suatu API meliputi komponen komponen yang terdiri dari urutan-urutan langkah input, output dan beberapa hal yang tipe-tipe yang khas.
Suatu API menspesifikasikan bagaimana komponen-komponen perangkat lunak berinteraksi satu dengan lainnya.
Tahapan membuat program java meliputi langkah-langkah / step sbb.
Step1 : Buat suatu dokumen dengan menggunakan suatu teks editor tertentu dan simpan file tersebut dengan ekstensi .java (contoh. hitung.java)
Step2 : Kompilasi/Compile file hitung java dengan menggunakan kompiler “javac” , maka file akan terkompilasi secara otomatis.
Step3 : Byte Code (hitung.class) akan dihasilkan pada hardisk. Kemudian jalankan program tersebut dengan mengetik pada command prompt misal d: java hitung.
Java pertama-tama membutuhkan suatu source code untuk dikompile terlebih dahulu.
File tsb selanjutnya akan dikonversikan kedalam kode mesin yang spesifik yang dinamakan byte code yang dapat dimengerti oleh run-time engine atau java virtual machine.
Bukan saja hanya program yang akan diperiksa sintak errornya oleh Java compiler, namun juga beberapa libraries of Java code dapat ditambahkan (linked) ke dalam program yang kita buat, sampai kompilasi itu lengkap tersusun (deployment stage).
Beberapa terminologi yang perlu dipahami seorang programmer dalam menggunakan program java yaitu :
JDK (Java Development Kit) : JDK yang mengandung JRE merupakan perangkat pengembang dimana didalamnya ada beberapa tools seperti Java libraries, Java source compilers, Java debuggers, bundling and deployment tool
JRE (Java Runtime Environment) : bagian dari JDK yang dapat berdiri sendiri untuk menjalankan suatu byte code (compiled java program). Ini dapat disebut sebagai implementasi dari JVM.
JVM (Java Virtual Machine) : ‘JVM’ merupakan suatu software yang dapat disimpan dalam berbagai platform perangkatkeras. JVM akan menjadi instance dari JRE pada saat menjalankan suatu program java. Byte codes sendiri merupakan bahasa mesin (machine language) untuk JVM. Sebagai layaknya sebuah mesin komputer yang nyata. JVM mempunyai beberapa set perintah / instruction yang mengolah/memanipulasi beberapa area memori pada saat dijalankan / run time.
Java API (Application Programming Interface) : Merupakan sekumpulan/Set of classes yang ditulis menggunakan bahasa pemrograman Java yang dijalankan dalam JVM.
Kumpulan kelas-kelas ini /classes akan membantu para programmer untuk melakukan beberapa tindakan seperti membuat method tertentu, membaca dari konsol/monitor, menulis ke monitor, menyimpan struktur data dalam objek dsb.
Advantages of Java programming language (Keunggulan bahasa java)
- Dukungan lengkap untuk membuat multi-threading, lomunikasi melalui socket dan memenej memori (memory management )(automatic garbage collection).
- Programnya berorientasi Objec / Object Oriented (OO).
- Lebih portabel dibandingkan dengan bahasa pemrograman lain dalam berbagai macam operating system.
- Mendukung program berbasis WEB ( Applet, Servlet, and JSP), Aplikasi yang terdistribusi (sockets, RMI, EJB etc.) dan network protocols (HTTP, JRMP etc.) dengan bantuan program yang terstandarisasi di APIs (Application Programming Interfaces).
Sun membagi arsitektur Java membagi tiga bagian, yaitu:
- Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan superset dari Standar Java
- Standar Java (J2SE), ini adalah yang biasa dikenal sebagai bahasa Java.
- Micro Java (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk wireless device / mobile device.
Beberapa fitur yang ditawarkan Java API antara lain sebagai berikut :
- Applet
Program Java yang dapat berjalan di atas browser, yang dapat membuat halaman HTML lebih dinamis dan menarik. - Java Networking
Sekumpulan API (Application Programming Interface) yang menyediakan fungsi– fungsi untuk aplikasi – aplikasi jaringan, seperti penyediaan akses untuk TCP,UDP,IP Adrressdan URL. Namun Java Networking tidak menyediakan akses untuk ICMP dikarenakan alasan sekuriti dan pada kondidi umum hanya administrator ( root ) yang bisa memanfaatkan protokol ICMP. - JavaDatabase Connectivity (JDBC)
JDBC menyediakan sekumpulan API yang dapat digunakan untuk mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server. - Java Security
Java Security menyediakan sekumpulan API untuk mengatur security dari aplikasi Java baik secara high level atau low level, seperti public/private key management dan certificates - JavaSwing
Java Swing menyediakan sekumpulan API untuk membangun aplikasi–aplikasi GUI (GraphicalUserInterface) dan model GUI yang diinginkan bisa bermacam–macam, bisa model Java, model Motif/CDE atau model yang dependent terhadap platform yang digunakan. - Java RMI
Java RMI menyediakan sekumpulan API untuk membangun aplikasi – aplikasi Java yang mirip dengan model RPC (Remote Procedure Call) jadi object - object Java bisa di call secara remote pada jaringan komputer. - Java2D/3D
Java 2D/3D menyediakan sekumpulan API untuk membangun grafik – grafik 2D/3D yang menarik dan juga akses ke printer. - Java Server Pages
Berkembang dari Java Servlet yan digunakan untuk menggantikan aplikasi – aplikasi CGI, JSP (Java Server Pages) yang mirip ASP dan PHP merupakan alternatif terbaik untuk solusi aplikasi Internet. - JNI (Java Native Interface)
JNI menyediakan sekumpulan APIyang digunakan untuk mengakses fungsi – fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman yang lain sepertiC,C++,dan Basic. - JavaSound
Java Sound menyediakan sekumpulan API untuk manipulasi sound. - Java IDL + CORBA
Java IDL (Interface Definition Language) menyediakan dukungan Java untuk implementasi CORBA (Common Object Request Broker) yang merupakan model distributed-Object untuk solusi aplikasi besar di dunia networking. - JavaCard
Java Card utamanya digunakan untuk aplikasi – aplikasi pada smart card, yang sederhana wujudnya seperti SIM Card pada handphone. - JTAPI (Java Telephony API)
Java Telepony API menyediakan sekumpulan API untuk memanfaatkan devices – devices telepony, sehingga akan cocok untuk aplikasi – aplikasi CTI (Computer Telephony Integration) yang dibutuhkan seperti ACD (Automatic Call Distribution)