Java

**Java** ialah sebuah bahasa pengaturcaraan pengaturcaraan berorientasi objek yang dibangunkan oleh James Gosling dan rakan-rakan sekerjanya di Sun Microsystems pada awal 1990-an. Tidak seperti kebiasaan bahasa pengaturcaraan lain yang direka bentuk untuk dikompil kepada kod mesin ataupun diterjemah terus dari kod sumber semasa masa jalanan, Java dikhaskan untuk dikompil kepada kod bait (ia boleh juga dikompil kepada kod mesin menggunakan gcj), yang mana ia akan dilaksanakan (biasanya menggunakan kompilasi JIT (*just in time*)) oleh Mesin Maya Java (JVM).

Bahasa pengaturcaraan Java banyak meminjam sintaks daripada C dan C++ tetapi mempunyai model objek yang mudah dan kurangnya fasiliti aras-rendah.

Java sebenarnya tiada kaitan dengan JavaScript walaupun kedua-duanya mempunyai nama yang sama dan berkongsi sintaks yang seakan-akan C.


## Contoh

```java
// Indah.java
public class Indah {
    public static void main(String[] args) {
        System.out.println("Indahnya Dunia!"); 
    } 
}
```


Setiap program Java hendaklah mempunyai paling kurang 1 class. Program Java bermula dengan main method iaitu 
```java
public static void main(String[] args)
```
.

Kata kunci 
```java
public
```
 ialah access modifier. Kata kunci 
```java
static
```
 membolehkan sesuatu method itu diakses tanpa perlu membuat objek. 


```java
System.out.println();
```


System ialah class
Out ialah objek. 
Println ialah method.

## Sintaks
Sintaks Java serupa dengan sintaks C yang menggunakan kurungan beralun untuk memisahkan blok-blok kod.

### Pengenalpasti
Java membenarkan pengenalpasti yang bukan kata simpanan, bermula dengan huruf, garis bawah (`_`) ataupun tanda dollar (`$`).  Di samping itu, Java turut menykong pengenalpasti unikod. Contoh berikut adalah contoh pengenalpasti yang sah:

```java
int nombor = 1;
double π = 3.14159;
Orang $seseorang = new Orang();
boolean _biar = true;
boolean _123 = false;
```


Manakala, yang berikut adalah salah:

```java
int int = 1;
String 123 = "Hai!";
```


### Pengulangan
Dalam Java, pengulangan (*looping*) boleh dilakukan dengan menggunakan gelung `for`, `while` atau `do ... while`.

;Gelung `for`
Gelung `for` boleh digunakan dalam dua cara iaitu; sama seperti sintaks C,

```java
for (int i = 0; i < akhir; i++) {
    // Buat sesuatu.
}
```

atau

```java
for (Benda benda : senaraiBenda) {
    // Buat sesuatu.
}
```

Dalam sintaks yang pertama, `for` disertakan dengan tiga ungkapan yang dipisahkan dengan tanda koma bertitik (`;`). Unkapan yang pertama ialah penugasan awal pembolehubah, yang kedua ialah syarat akhir gelung, dan yang ketiga ialah penugasan semula pemboleh ubah. Gelung di atas dapat diungkapkan sebagai "Buat sesuatu bagi *i* bermula dengan nilai 0, hingga *i* kurang daripada nilai *akhir*, dan *i* ditambah satu setiap kali diulang".

Sintaks yang kedua pula terbahagi kepada dua bahagian yang dipisahkan dengan titik bertindih (`:`). Bahagian pertama ialah pengisytiharan pembolehubah gelung, manakala yang kedua ialah pembolehubah yang ingin dilelarkan. Gelung di atas boleh diungkapkan sebagai "Buat sesuatu bagi setiap *benda* dalam *senaraiBenda*".

## Kelebihan

* Mudah untuk dipelajari. Bagi mereka yang sudah mengetahui bahasa pengaturcaraan C atau C++, bahasa Java menjadi mudah dipelajari, disebabkan sintaks yang banyak persamaan.

* Tulis kurang kod. Program yang ditulis menggunakan Java biasanya empat kali lagi kurang kod berbanding jika ia ditulis menggunakan C++.

* Tulis kod lagi baik. Disebabkan Java ialah bahasa pengaturcaraan yang berorentasikan objek, penggunaan semula kod yang sudah pun ditulis memperbolehkan kadar kesalahan kod dapat dikurangkan. 

* Pembangunan program-program lagi cepat. Menggunakan Java juga memperbolehkan pembangunan program yang lagi cepat dilakukan dan jumlah baris kod yang lagi kurang diperlukan.

* Mengelakkan kebergantungan platform. Program yang dibangunkan oleh bahasa java ialah program yang dapat dilarikan dimana-mana platform.

## Versi
Versi utama Java dengan tarikh dilancarkan:
* JDK 1.0 (23 Januari 1996)
* JDK 1.1 (19 Februari 1997)
* J2SE 1.2 (8 Desember 1998)
* J2SE 1.3 (8 Mei 2000)
* J2SE 1.4 (6 Februari 2002)
* J2EE 5.0 (30 September 2004)
* Java SE 6 (11 December 2006)
* Java SE 7 (28 Julai 2011)
* Java SE 8 (18 Mac 2014)
* Java SE 9 (22 September 2017)
* Java SE 10 (Mac 2018)
* Java SE 11 (September 2018)
* Java SE 12 (Mac 2019)
* Java SE 13 (September 2019)
* Java SE 14 (Mac 2020)
* Java SE 15 (September 2020)
* Java SE 16 (Mac 2021)
* Java SE 17 (LTS) (September 2021)
* Java SE 18 (Mac 2022)
* Java SE 19 (September 2022)
* Java SE 20 (Mac 2023)
* Java SE 21 (LTS) (September 2023)

## Perisian Pembangunan Java

Penghasilan perisian menggunakan bahasa Java boleh dilakukan dengan berbantukan perisian persekitaran pembangunan java (Java IDE). Salah satu perisian popular tersebut ialah Netbean dan ia percuma. Perisian ini bukan sahaja memperbolehkan kita melakukan kerja-kerja pengaturcaraan biasa, malah program ini juga menyokong konsep pembangunan perisian mengunakan kaedah terkini seperti menggunakan UML. Melalui kaedah UML, pembangun perisian cuma perlu merekacipta model dan kod java dijana oleh perisian. Kitar pembangunan perisian menjadi sangat pantas.

## Lihat juga

* Javapedia
* JavaOne
* JavaOS
* Java Posse
* Join Java
* Perbandingan bahasa-bahasa pengaturcaraan
* Penyusun kod bait C ke Java

* Persijilan Profesional Sun
* Senarai API Java
* Senarai bahasa penskripan Java
* Senarai mesin maya Java
* Sejarah ringkas perkembangan bahasa Java
* Sejarah ringkas versi Java

## Rujukan


## Pautan luar

*
*
*
*
* Laman rasmi Java
* Full Java Tutorial
* ['''Universiti Utara Malaysia:''' Pengaturcaraan Awal Java](http://staf.uum.edu.my/mazni/MaterialTA1013/NotaKuliah/Minggu%201%20-Pengaturcaraan%20Awalan%20(Java)%20.ppt) dan Pengenalan kepada Java