Sabtu, 08 Oktober 2011

sejarah java

Sejarah Java


                    Paradigma                :     OOP
    Muncul Tahun         :     1990-an
    Perancang                :    Sun Microsystems
    Sistem pengetikan :   kuat, statis
    Implementasi          :    banyak
                  Terpengaruh oleh  :      Objective-C, C++, Smalltalk, Eiffel
            Mempengaruhi       :    C#, D, J#, PH

Java dipelopori oleh James Gosling, Patrick Naughton, Chris Warth, Ed Frank, dan Mike Sheridan dari Sun Microsystems, Inc pada tahun 1991. Mereka membutuhkan kurang lebih 18 bulan untuk membuat versi pertamanya. Bahasa ini pada awalnya disebut “Oak” tapi kemudian diubah menjadi “Java” pada tahun 1995 karena nama Oak telah dijadikan hak cipta dan digunakan sebagai bahasa pemrograman lainnya.
Perkembangan Java dari awal muncul smapai sekarang antara lain :

Ø      Java Modern
Ø      Java Virtual Machine (JVM)
Java Virtual Machine merupakan aplikasi sederhana yang ditulis dalam bahasa C untuk mengeksi program yang ditulis dalam bahasa Java. Pada saat kompilasi (perubahan dari bahasa tingkat tinggi ke bahasa lebih rendah), program tersebut diubah menjadi KODE BYTE.
Ø      Just In Time Compiler (JIT)
Sun menyediakan kompiler Just In Time Compiler (JIT) untuk mengkompilasi kode byte itu menjadi bahasa mesinnya pada saat yang bersamaan dengan eksekusinya.

Versi Awal

Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

·         java.lang: Peruntukan kelas elemen-elemen dasar.
·         java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
·         java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
·         java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
·         java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
·         java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

-  Keuntungan yang Anda dapat dari Java :

·         Mulai dengan cepat
·         Tulis lebih sedikit program
·         Tulis program lebih baik
·         Membuat program dengan lebih cepat
·         Tulis sekali, jalankan di mana saja
·         Menghindari kebergantungan pada platform tertentu
·         Distribusikan software Anda dengan mudah

- Kekurangan Java :

Ø      Tulis sekali, jalankan di mana saja : Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain.
Ø      Mudah didekompilasi : Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data.
Ø      Penggunaan memori yang banyak : . Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal).

Program Java pertama Anda

1.       Klik "File -> New -> Java Project"
2.       Isi nama proyek (misalnya SelamatDatang), kemudian klik "Finish"
3.       Setelah Eclipse membuat proyek untuk Anda, di bagian kiri workspace Anda akan melihat struktur direktori proyek Anda yang dimulai dengan nama proyek, folder src, dan folder JRE System Library
4.       Klik kanan pada folder src, kemudian "New -> Package"
5.       Isi nama package (misalnya selamatdatang), kemudian klik "Finish"
6.       Klik kanan lagi pada folder selamatdatang, kemudian "New -> Class"
7.       Isi nama class (misalnya SelamatDatang)
8.       Karena class ini adalah class utama yang akan langsung dijalankan oleh JRE (Java Runtime Environment), click "public static void main(String[] args)" pada bagian "Which method stubs would you like to create?"
9.       Klik "Finish"
10.   Eclipse akan membuat program kosong yang berisi package dan class sesuai dengan nama yang Anda masukkan pada tahap sebelumnya .
11.   Sekarang ketik program berikut di bawah "// TODO"
|System.out.println("Selamat Datang!"); |
12.   Kemudian simpan hasilnya


Menjalankan program Java pertama Anda

ü      Untuk menjalankan program Anda, klik "Run -> Run"
ü      Di bagian bawah pada tab yang berjudul "Console" hasil program Anda ditampilkan
ü      Program ini akan menampilkan tulisan Selamat Datang! seperti pada gambar berikut ini

ü      Definisi paket (package)
Package dalam Java merupakan kumpulan dari berbagai kode yang terangkum dalam satu paket. Untuk memudahkan penulisan dan pembagian logika suatu program, satu paket terbagi menjadi beberapa berkas (file) di mana setiap file memiliki fungsi atau tugas yang sangat khusus.
ü      Definisi Kelas
Kelas merupakan bagian integral dari bahasa Java karena Java merupakan bahasa berorientasi objek. Setiap aplikasi harus terdiri dari satu kelas. Di sini kita definisikan kelas SelamatDatang sebagai kelas utama.
ü      Metode main
Metode main mirip dengan fungsi main pada bahasa C/C++ di mana fungsi ini merupakan pintu gerbang dimulanya suatu program. Metoda main dapat dipanggil dengan menyertakan variabel, baik hanya satu variabel, banyak variabel atau bahkan tidak ada sama sekali.

Variabel dan Tipe Data

Variabel dalam bahasa Java didesign untuk menyimpan hanya 1 jenis tipe data. Kompiler akan menampilkan kesalahan sintax apabila variabel ini dicoba untuk diberi tipe data jenis lain. Oleh karena itu Java disebut bahasa pemrograman bertipe kuat atau strongly typed language.

-          Jenis-jenis Variabel :

ü      Instance Variables (tidak statis)
ü      Class Variables (statis)
ü      Local Variables

Bahasa Java memiliki 3 jenis komentar :

ü      /* text */ — Compiler akan mengabaikan kata kata antara /* dan */

ü      /** documentation */ — Ini merupakan komentar yang dipergunakan khusus untuk dokumentasi. Kompiler akan mengabaikan komentar dari /* hingga */. Alat bantu javadoc akan memproses komentar dokumentasi untuk membuat dokumentasi secara otomatis dari sumber program.

ü      // text — Kompiler akan mengabaikan segala sesuatu dari // hingga akhir baris

Literal

Pada bagian ini akan dijelaskan tentang literal, yaitu rangkaian kata atau huruf yang menyatakan suatu nilai. Misalnya : int angka = 10;

Pada pernyataan di atas, yang dinamakan literal adalah 10, karena 10 berarti bilangan bulat atau integer. Pada bahasa pemrograman java, terdapat beberapa jenis literal yang melambangkan bilangan bulat, riil, kalimat, atau boolean.
1.       Literal Bilangan Bulat

Bilangan bulat dapat dilambangkan dalam beberapa bentuk. Bilangan bulat biasa dilambangkan dengan deretan angka yang dimulai dengan angka yang bukan nol.
int angka = -10;

Bilangan oktal adalah bilangan bulat berbasis 8, yang berarti hanya dapat terdiri dari angka-angka 0 hingga 7. Bilangan oktal ditulis seperti bilangan bulat biasa dimulai dengan 0.
// 22 basis delapan atau 18 dalam desimal
int angka = 022;

Bilangan heksadesimal adalah bilangan berbasis 16. Bilangan heksadesimal dilambangkan dengan 0 hingga 9 dan a hingga f dan dimulai dengan 0x.
// 2a heksadesimal atau 42 dalam desimal
int angka = 0x2a;

Long integer  membutuhkan memori sebesar 64bit, yang artinya kita dapat menyimpan bilangan bulat hingga 2 ^ 64. Untuk merepresentasikan long integer, tambahkan huruf L pada akhir bilangan. Ex : int angka = 22L;

2.       Literal Karakter

Kita dapat melambangkan suatu karakter dengan tanda petik tunggal misalnya ‘a’ atau ‘3 atau ‘=’. Suatu karakter dapat juga dilambangkan dengan kode ASCII nya. Caranya dengan memulainya dengan \u00 (garis miring terbalik) kemudian diikuti dengan kode ASCII nya dalam bentuk heksadesimal.
Ex : // huruf 'A' dalam ASCII
char huruf = '\u0041';

3.       Literal Boolean

Nilai true dan false pada java merupakan literal boolean. Suatu variabel bertipe boolean hanya dapat memiliki nilai true atau false.
boolean ok = true;

4.       Literal Bilangan Riil

Bilangan riil, misalnya -0.00127 atau 415.842, pada java dapat disimpan baik sebagai float atau double. Bilangan real dapat direpresentasikan dalam bentuk desimal biasa, pecahan, atau eksponen (dilambangkan dengan e atau E). Imbuhan akhir d atau D dan f atau F dapat pula ditambahkan untuk menentukan tipenya secara eksplisit. Berikut beberapa contohnya:
double d = 3.27E+32;
float f = 4f;
float pi = 3.14159;

5.       Literal String

String merupakan untaian huruf dan angka yang tersusun menjadi satu kalimat. String pada java tidak disimpan dalam bentuk array seperti pada C. Java menyediakan beberapa metoda untuk melakukan penggabungan, modifikasi, atau perbandingan. String ditulis di antara dua tanda petik ganda seperti contoh berikut. String salam = "Selamat Datang";
String juga dapat mengandung karakter spesial seperti dibahas pada literal karakter. Misalnya
String hallo = "Selamat Datang \"Bapak Presiden\"";
System.out.println("Hallo Bambang\nSelamat pagi,\nSemoga hari anda cerah\n";

6.       Literal Null

Null merupakan kondisi di mana suatu objek tidak diberi alokasi memori. Pada saat suatu objek dideklarasikan, komputer akan mengalokasikan memori untuk objek tersebut. Apabila objek tersebut telah selesai dipergunakan, kita dapat melepas lokasi memori yang digunakan oleh objek tersebut sehingga memori itu dapat digunakan oleh objek lain. Berikut ini adalah contohnya : obj = null;
Literal null berfungsi memberi tahu garbage collector (pemulung memori) bahwa objek tersebut tidak lagi terpakai. Kemudian memori akan dilepaskan agar dapat digunakan oleh objek lain.

Contoh Program Variabel dan Tipe Data

Lihat cara mengimpor contoh-contoh program ke dalam Eclipse di Bab II - Instalasi.
package bungabank;

public class BungaBank {

                /**
                 * @param args
                 */
                public static void main(String[] args) {
                                // TODO Auto-generated method stub

                                /* Deklarasi variable */
                                double pokok;                  // nilai investasi
                                double sukubunga;         // suku bunga bank
                                double bunga;                  // nilai bunga

                                /* Perhitungan */
                                pokok = 20000;
                                sukubunga = 0.10;            // sama dengan 10%
                                bunga = pokok * sukubunga;

                                pokok = pokok + bunga;

                                /* Cetak hasil keluaran */
                                System.out.print("Bunga yang dihasilkan adalah Rp. ");
                                System.out.println(bunga);
                                System.out.print("Nilai investasi setelah 1 tahun adalah Rp. ");
                                System.out.println(pokok);

                }
}

Berikut adalah hasil keluarannya :

String, Objek dan Subrutin

Subrutin adalah kumpulan instruksi program yang digabungkan sehingga memiliki fungsi tertentu. Nilai tipe String adalah objek yang memiliki kumpulan subrutin yang dapat digunakan untuk memanipulasi String tersebut. Kelas terdiri dari variabel dan subrutin yang disimpan di dalamnya. Variabel dan subrutin ini disebut static member (anggota statis).

Contoh Kode Program Sederhana Dalam Java

Contoh program Halo dunia yang ditulis menggunakan bahasa pemrograman Java adalah sebagai berikut:
// Outputs "Hello, world!" and then exits
public class HelloWorld {
   public static void main(String args[]) {
       System.out.println("Hello, world!");
   }
}

Tahap Kompilasi Java

1.       Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas '.java'.
2.       Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas '.class'.
3.       Muat. Pemuat kelas memuat bytecodes ke memori.
4.       Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java.
5.       Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di pakai‘’

Keyword di Java

                Keyword adalah identifier yang digunakan Java untuk suatu tujuan khusus. Daftar keyword Java adalah sebagai berikut:
Tabel Error! No text of specified style in document.1 Keyword dalam Java
abstract
do
implements
private
this
boolean
double
import
protected
throw
break
else
instanceof
public
throws
byte
extends
int
return
transient
case
false
interface
short
true
catch
final
long
static
try
char
finally
native
strictfp
void
class
float
new
super
volatile
continue
for
null
switch
while
default
if
package
synchronized

 


Tipe Data di Java

Tipe data dalam Java dibagi dalam dua kategori:
1.       Sederhana
2.       Komposit

Tipe data sederhana

Terdapat delapan tipe data primitif di Java:
-   Empat tipe adalah untuk bilangan bulat: byte, short, int, long
-   Dua untuk tipe angka pecahan (floating point): float, double
-   Satu untuk tipe karakter, yaitu char
-   Satu untuk tipe boolean yang berisi nilai logika: true/false

Tipe data integer
                Tipe data integer memiliki jangkauan nilai sebagai berikut:
Tabel Error! No text of specified style in document.2 Tipe data Integer
Panjang Integer
Tipe data
Jangkauan Nilai
8 bit
byte
-27 to 27-1
16 bit
short
-215 to 215-1
32 bit
int
-231 to 231-1
64 bit
long
-263 to 263-1
Integer
Tipe
Tempat yang Diperlukan
Jangkauan (inclusive)
int
4 byte
- 2.147.483.648 sampai 2.147.483.647 (hanya lebih dari 2 miliar)
short
2 byte
- 32.768 sampai 32.767
long
8 byte
- 9.223.372.036.854.775.808L sampai 9.223.372.036.854.775.807L
byte
1 byte
- 128 sampai 127

Tipe data Floating point
                Tipe data ini digunakan untuk perhitungan yang melibatkan bilangan pecahan, seperti perhitungan kosinus, akar persamaan, dan sebagainya. Java mengimplementasikan standar himpunan tipe dan operator titik mengambang IEEE-754.
Keakuratan nilai untuk tipe data floating point adalah sebagai berikut:
Tabel Error! No text of specified style in document.3 Tipe data Floating Point
Panjang Float
Tipe data
Nilai terbesar
32 bit
Float
3.40282e+38
64 bit
Double
1.79769e+308

Tipe data Char
                Tipe data char merupakan tipe data yang direpresentasikan dengan 16-bit Unicode character. Literal dari char harus berada diantara single quotes (‘ ‘)
Contohnya :
  ‘a’                         huruf a
  ‘\t’                       karakter tab
Terdapat pula beberapa barisan escape untuk karakter Unicode yang spesial, seperti berikut:
Tabel Error! No text of specified style in document.4 Karakter Unicode
Barisan Escape
Nama
Nilai Unicode
\b
Backspace
\u008
\t
Tab
\u009
\n
Linefeed
\u00a
\r
Carriage return
\u00d
\”
Petik ganda
\u0022
\’
Petik tunggal
\u0027
\\
Backslash
\u005c

Tipe data Boolean
                Tipe data boolean memiliki 2 literal yaitu : true dan false. Contoh, Statemen :
boolean truth = true;
mendeklarasikan variabel truth sebagai tipe data boolean dan memberikan nilai true

Tipe data komposit

Tipe data komposit merupakan tipe data yang disusun dari tipe data sederhana atau tipe komposit lain yang sudah ada. Tipe ini dapat berupa array, string, kelas, dan interface.
Khusus untuk String pada Java dikenali sebagai kelas, bukan sebagai array of character. String pada Java diapit oleh tanda petik ganda (“.....”), contoh:
String s=”Saya makan nasi”;
Operator di Java
Java memiliki beberapa jenis operator di antaranya:
-          Operator unary:
Tabel Error! No text of specified style in document.5 Operator unary
Nama Operator
Simbol
Definisi
Increment
++
Akan menambahkan nilai sejumlah satu
Decrement
--
Akan mengurangi nilai sejumlah satu

-                      Operator aritmatika:
Tabel Error! No text of specified style in document.6 Operator aritmatika
Nama Operator
Simbol
Deskripsi
Penambahan
+
Menambahkan dua buah nilai
Pengurangan
-
Pengurangan dua buah nilai
Perkalian
*
Perkalian dua buah nilai
Pembagian
/
Pembagian dua buah nilai
Sisa bagi
%
Sisa pembagian dua buah nilai

-                      Operator relasi:
Tabel Error! No text of specified style in document.7 Operator relasi
Simbol
Deskripsi
< 
Kurang dari
> 
Lebih dari
<=
Kurang dari atau sama dengan
>=
Lebih dari atau sama dengan
==
Sama dengan
!=
Tidak sama dengan

-                      Operator boolean:
Tabel Error! No text of specified style in document.8 Operator boolean
Simbol
Deskripsi
&&
AND
||
OR
^
XOR
!
NOT
OPERATOR
Assignment Operator ( = )
Shorthand assignment operator
Operator
Usage
Meaning
+=
X += Y
X = X + Y
-=
X -= Y
X = X – Y
*=
X *= Y
X = X * Y
/=
X /= Y
X = X / Y
%=
X %= Y
X = X % Y
Arithmetic Operator
Operator
Operation
+
Addition
-
Subtraction
*
Multiplication
/
Division
%
Modulo
Bitwise Operator
Operator
Operation
&
AND
|
OR
^
XOR
>> 
Shift Kanan
<< 
Shift Kiri
>>> 
Shift Kanan isi dengan nol
Unary Operator
Operator
Operation
~
Unary NOT
-
Minus
++
Increment
Decrement

Relational Operator
Operator
Operation
==
Equal To
!=
Not Equal To
> 
Greater Than
< 
Less Than
>=
Greater or Equal To
<=
Less or Equal To
Logical  Operator
Operator
Operation
!
Short-circuit NOT
&&
Short-circuit AND
||
Short-circuit OR
?:
Operator ternary if-then-else
Preseden Operator
Tertinggi
()
[]
.

++
~
!
*
/
%

+
-


>> 
>>> 
<< 

> 
>=
< 
<=
==
!=


&



^



|



&&



||



?:



=
op=


Terendah




Struktur kontrol alur program
Percabangan
  • if – else
Bentuk umum pernyataan if-else             :
if (boolean expression) statement 1; [else statement 2;  ]
  • break
  • switch
Bentuk umum pernyataan switch  :
switch (expression)
{  case value1  :
Statement;
break;
case value2  :
Statement;
break;
case valueN  :
Statement;
break;
default;
}
  • return
Perulangan  (Looping)
  • while
Bentuk  umum dari pernyataan while           :
[initialization;]
while (termination)
{  body program   ;
[iteration;]
}
  • do-while
Bentuk umum pernyataan do – while           :
[initialization;]
do
{   body program;
[iteration;]
}
while [termination];
  • for
  • Pernyataan koma
  • continue


Tidak ada komentar:

Posting Komentar