Menulis Program Java

Share on :
Aturan penulisan program di Java

-   Java adalah turunan dari C, sehingga Java memiliki sifat C yaitu Case sensitive, yaitu membedakan antara huruf besar dan kecil

-          Dalam sebuah file program di Java, hanya diijinkan memiliki 1 buah class yang bersifat public

-          Dalam sebuah file program Java, hanya ada satu method main(method yang pertama kali dibaca oleh interpreter Java)

-          Nama sebuah file program Java harus sama dengan nama class yang memiliki method main() di dalam tubuhnya.  Perhatikan bahwa tulisan nama file dengan nama class (huruf besar maupun kecilnya) haruslah persis sama. .

Berikut adalah contoh membuat program dengan menggunakan Java.  Pada program akan ditampilkan tulisan “Hello World !“

//Nama File Hello.java

class Hello

{

     public static void main(String args[])

     {

            System.out.println(“Hello World !”);

     }

}

Langkah selanjutnya :

1.      Simpan dengan nama: Hello.java

2.      compile Hello.java : javac Hello.java

3.      hasilnya akan menghasilkan : Hello.class

4.      jalankan Hello.class: java Hello.class atau java Hello

5.      akan keluar hasil :

Hello world!

Programming Tip :

Dalam penulisan bahasa program, disarankan :

1.      Huruf depan dari sebuah class atau method menggunakan huruf besar

2.      Menulis Komentar pada sebuah class atau method untuk memudahkan debug(pencarian kesalahan).  Serta mempermudah orang lain membaca program kita.  Ingat !!! Dalam dunia nyata, programmer bekerja secara team, jadi usahakan partner team mengerti apa yang kita buat dengan memberikan komentar(tentang pembuatan komentar akan dibahas dibawah)

3.      Membuat indentasi(jarak antara induk perintah dan anak perintah).  Identasi sebisa mungkin dibuat standard, semisal pada contoh diatas, jarak antara tulisan “class Hello” sebagai induk perintah dengan tulisan “public…..” sebagai anak perintah adalah 5 spasi.  Sekali lagi, ini untuk mempermudah dalam pengertian program

Statement dan Identifier

1.      Statement

Bentuk statement atau pernyataan dalam satu program di Java adalah sebagai berikut :

Int i=1;

String teman = “Iman Rochdilianto”;

import java.awt.Font;

System.out.println(“Selamat Datang “ + teman +

                “di Praktikum SBP”);

pegawai.tetap=true;

total= a + b + c + d + e;

Setiap statement selalu diakhiri dengan titik koma (;) 

Blok adalah 2 tanda kurung kurawal ({}) yang menyatukan statemen

{

   x = x + 1;

   y = y * 3;

}

Java memperbolehkan spasi dalam jumlah berapa saja (Spasi, tab, baris baru)

            class Hello

     {

         public static void main(String args[])

         {

             System.out.println(“Hello World”);

         }

     }

          

            bisa ditulis dalam bentuk sepeerti dibawah ini :

            class Hello ( public static void main(String args[]) {

     System.out.println(“Hello World!”); } }

 Identifier

Dalam Java, identifier adalah nama yang diberikan untuk variable, class, atau method.  Identifier boleh dimulai dengan huruf, underscore(_) atau tanda dollat($).

Identifier adalah case sensitive(membedakan huruf besar/kecil) dan tak ada batas maksimum.

Contoh :

            username

     user_name

     _sys_var1

     $change

Variabel dan Tipe Data

1.      Variabel

Variabel adalah suatu item dari data yang diberi nama identifikasi(identifier), variable dapat diartikan lokasi di dalam memori yang mana suatu nilai(value) dapat disimpan.

2.      Tipe Data

Java membagi tipe data menjadi 2 bagian :

(1)    Tipe data primitive

Keyword
   

Size
   

Range

Bilangan Integer

Byte
   

8 bits
   

-128 s/d 127

Short
   

16 bits
   

-32768 s/d 32767

Int
   

32 bits
   

-2.147.483.648 s/d 2.147.483.647

Long
   

64 bits
   

9223372036854775808 s/d 9223372036854775808

Bilangan Real

Float
   

32 bits
   

Single Precision

Double
   

64 bits
   

Double Precision

   

   

Tipe Data Lain

Char
   

16 bits
   

Single Characte

Boolean
   

True / false
   

Nilai Boolean

Contoh cara pendeklarasian dan inisialisasi tipe data primitive sebagai berikut :

char ch;                // deklarasi variable

ch = “R’;              // inisialisasi variable

char ch1= “S”;             // delarasi dan inisialisasi variable

int x,y,z;                       // deklarasi 3 variabel integer

boolean tetap= true; 

(2)    Tipe data reference

Reference adalah pointer ke tipe data atau penyimpan alamat data.

Terdapat tiga data reference yaitu : array, class, dan  interface (mengenai tipe data reference akan diuraikan dalam bab selanjutnya)

Komentar

Komentar tidak akan menjadi bagian program yang dieksekusi. Kita dapat menambahkan senbanyak mungkin komentar.

Komentar di Java dapat didefinisikan dengan 3 cara berbeda .

Jenis Komentar :

/* komentar */    ===èSemua karakter yang berada di antara /* dan */ akan diabaikan.

// komentar         ===èSemua karakter setelah // sampai akhir baris akan diabaikan.

/** komentar */  ===èSerupa dengan /*   */, kecuali bahwa komentar akan digunakan tool          javadoc untuk menciptakan dokumentasi otomatis.

Berikut cara menyisipkan komentar pada program

class Hello

{

     // kalimat ini adalah komentar

     // yang tak akan dieksekusi

     public static void main(String args[])

     {

          System.out.println(“Hello World!”);

     }

     /*

          Kalimat ini adalah komentar

          Yang tidak akan dieksekusi

     */

}

Literal

Karakter literal adalah karakter yang ditulis diantara kutip tunggal : ‘r’,’#’,’14’ dan sebagainya.  Karakter ini disimpan sebagai 16 bit Unicode Characters.  Berikut daftar special kode yang merepresentasikan karakter-karakter yang tidak dapat di print(non-printable characters)

Escape
   

Meaning

\n
   

Newline

\t
   

Tab

\b
   

Backspace

\r
   

Carriage Return

\f
   

Formfeed

\\
   

Backslash

\’
   

Single Quote

\”
   

Double Quote

\ddd
   

Octal

\xdd
   

Hexadecimal

\udddd
   

Unicode Character

Contoh :

“Trade Mark dari Java \u212”

Hasil output diatas adalah :

Trade Mark dari Java ™

Operator dan Ekspresi

Ekspresi : adalah statement yang mengembalikan suatu nilai

Operator : suatu symbol yang biasanya digunakan dalam ekspresi

1. Operator Aritmatika

Operator
   

Meaning
   

Example

+
   

Addition
   

3 + 4

-
   

Substraction
   

5 – 7

*
   

Multiplication
   

5 * 5

/
   

Division
   

14 / 7

%
   

Modulus
   

20 % 7

Contoh :

// Nama File Aritmatika.java

class Aritmatika {

     public static void main(String args[]) {

          short x = 10’

          int y = 4;

          float a = 12.5f;

          float b = 7f;

          System.out.println(“X = “ + x + “, Y = “ +y);

          System.out.println(“X +Y = “ + (x +y));       

System.out.println(“X -Y = “ +(x-y));    

System.out.println(“X / Y = “ +(x/y));        

System.out.println(“X % Y = “ +(x%y));        

System.out.println(“A = “ + a + “, B = “ +b);        System.out.println(“A / B = “ + (a / b));

}

}

2. Operator Increment dan Decrement

Operator increment dan Decrement ( ++ dan -- ) menaikkan dan menurunkan variable dengan 1.

Contoh :

Y = ++ x;

Z= --x;

3. Assignment Operator

Ekspression
   

Meaning

x += y
   

x = x + y

x -= y
   

X = x – y

x *= y
   

x = x * y

x /= y
   

x = x / y

Lebih jauh dengan Assignment

            Variabel assignment adalah suatu bentuk ekspresi :

            x = y = z = 0;

          

            pada contoh diatas variable x,y,z bernilai 0.

4. Operator Relasional ( Perbandingan)

Java mempunyai beberapa ekspresi untuk menguji hasil suatu perbandingan :

Operator
   

Meaning
   

Example

==
   

Equal
   

x== 3

!=
   

Not Equal
   

x != 3

<
   

Less Than
   

x < 3

>
   

Greater Than
   

x > 3

<=
   

Less Than Or Equal To
   

x < = 3

>=
   

Greater Than Or Equal To
   

x > = 3

5. Operator Logika

Operator
   

Meaning
   

Example

&&
   

And
   

2 && 2

||
   

Or
   

2 || 2

!=
   

NOT
   

2 != 2

6.      Operator Bitwise

Operator bitwise complement operator ( ~ ) melakukan negasi bitwise nilai bilangan bulat. Bitwise negation berarti masing – masing bit di angka maka semua bilangan biner 0 menjadi 1 dan semua bilangan biner 1 menjadi 0.

Contoh :

X=8;

Y=~x;

Pada contoh ini x diberi nilai literal 8, kemudian dilakuakn bitwise complement sebelum diberikan ke y.Hal ini bearti semua bit di varioabel x dinegasikan, hasilnya adalah bilangan bulat -9.

Contoh diatas terjadi karena bilangan int disimpan menggunakan metode two’s complement. Semua bilangan int ( kecuali char) direpresentasikan two’s complement yang berarti bilangan negative direpresentasikan dengan inverse semua bit menghasilkan 11110111 adalah angka -9, bila ditambah 1 maka 11111000 adalah -8.

Karena pengunaan two’s complement maka operator bitwise dapat menghasilkan nilai – nilai tidak diharapkan. Mengubah bit paling kiri akan berarti mengubah tanda bilangan dari positif menjadi neatif dan sebaliknya.

Object dan Class

Definisi class dan object :

class

Dalam dunia nyata, kita sering berinteraksi dengan banyak object.  Kita tinggal di rumah, rumah adalah suatu object, dalam terminology OOP rumah kita adalah instance dari suatu class rumah.

Misal kita tinggal dalam suatu komplek perumahan, sebelum membangun rumah, developer akan berpanduan pada rancang bangun rumah(blue print) yang telah dibuat seorang arsitek.  Blue print dari rumah adalah class, sedang rumah yang kita tinggal(rumah-rumah dalam komplek) disebut instance.

Manusia adalah sebuah class ; anda, saya, kita adalah instance dari class manusia

Object

Object adalah instance dari class.  Jika class secara umum merepresentasikan(template) sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.

Bekerja dengan Object

Ketika anda membuat program dengan Java, anda akan mendefinisikan beberapa class, anda juga akan menggunakan class untuk membuat suatu instance dan tentu saja akan bekerja dengan instance-instance tersebut.

Membuat object

Untuk membuat object, kita menggunakan perintah new dengan sebuah nama class yang akan dibuat sebagai instance dari class tersebut.

String str = new String();

Random r = new Random();

Pegawai p2 = new PEgawai();

Date hari = new Date();

hari adalah object reference dari class Date yang akan digunakan untuk mengakses class Date.

Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai reference ke instance dari class Date().

Contoh :

Kita akan menggunakan class Date untuk membuat suatu object Date.

import java.util.Date;

class CreateDates {

     public static void main(String args[]){

          Date d1,d2,d3;

          d1 = new Date();

          System.out.println(“Hari 1 : “ + d1);

d2 = new Date(71,4,14,8,35);

          System.out.println(“Hari 2 : “ + d2);

d3 = new Date(“September 3 1976 2:25 PM”);

          System.out.println(“Hari 3 : “ + d3);

     }

}

Ketika anda memanggil operator new terjadi beberapa hal :

1.      Instance baru yang telah diberikan oleh class dicipakan

2.      Memori dialokasikan untuk instance tersebut

3.      Special Method didefinisikan pada class (Konstruktor)

Konstruktor : Suatu method tertentu untuk membuat dan menginsialisasi sebuah instance baru dari class.  Konstruktor menginisialiasasi object-object baru dan variable-variabel.  Pemberian nama method Konstruktor harus sama dengan nama classnya. (Penjelasan tentang Konstruktor akan dibahas dalam pertemuan berikutnya)

Akses dan Setting Class dan Variabel Instance

Akses variable Instance

Untuk mengambil value dari suatu variable instance kita gunakan notasi titik(.)

Dengan notasi titik, sebuah instance atau variable class dibagi dua bagian.  Object berada disebelah kiri titik, dan variable berada di kanan titik.

Pegawai.tugas;

Pegawai adalah object, tugas adalah variable.  Misalkan tugas adalah object yang mempunyai variable instance sendiri yaitu status, penulisan dapat ditulis sebagai berikut

Pegawai.tugas.status;

Memberi Nilai variabel

Untuk memberi nilai variable kita gunakan operator sama dengan(=) disebelah kanan ekspresi.

Pegawai.tugas.status = SELESAI; // SELESAI==true

Contoh :

//  Nama File : Testpoint.java

import java.awt.font;

class Testpoint {

     public static void main(String args[]) {

          Point poin = new Point(10,10);

          System.out.println(“X = “ + point.x);

          System.out.println(“Y = “ + point.y);

          System.out.println(“Setting X = 6 “);

          poin.x = 6;

System.out.println(“Setting Y = 14“);

          poin.y = 14;

          System.out.println(“X = “ + point.x);

System.out.println(“Y = “ + point.y);

}

}

Memanggil method

Untuk memanggil method didalam object, sama seperti memanggil variable instance; yaitu dengan dengan menggunakan notasi titik(.)

Object berada disebelah kiri titik, dan method beserta argumen-argumen berada di kanan titik.

ObjectSatu.methodDua(arg1, arg2, arg3);

Method tanpa argument :

ObjectSatu.methodNoArg();

Jika method yang dipanggil mempunyai object yang mempunyai method tersendiri

ObjectSatu.GetObjectLain().getNama();

Method dengan kombinasi memanggil variable instance

Pegawai.golongan.gaji(arg1, arg2); 

Contoh :

//Nama File : TestString.java

classTestString {

     public static void main(String args[]) {

String str=”Awalilah segala sesuatu pekerjaan dengan

Bismillah”;

          System.out.println(“Kalimat bijak : “ +str);

          System.out.println(“Panjang Kalimat  : “ +str.length());

System.out.println(“Character pada posisi 4 adalah : “ +str.charAt(4));

     }

}

Object Reference

            Ketika bekerja dengan object-object, salah satu hal yang penting untuk dimengerti adalah bagaimana menggunakan reference ke suatu object.

            Ketika kita meng-assign suatu object ke variable, atau menjadikan object-object sebagai argument pada suatu method, sesungguhnya kita telah membuat reference ke object-object tersebut, bukan object atau duplikasi(copy) dari object yang membuat suatu reference


Contoh berikut akan membuat kita jelas :

// Nama file : ReferencesTest.java

import java.awt.font;

class ReferenceTest {

     public static void main(String args[]) {

          Point poin1,poin2;

          poin1 = new Point(100,100);

          poin2 = poin1;

          poin1.x = 200;

          poin2.y = 200;

          System.out.println(“Point 1 : “+poin1.x+”,”+poin1.y);

          System.out.println(“Point 1 : “+poin1.x+”,”+poin1.y);

     }

}

Dalam program diatas, kita mendeklarasikan dua variable bertipe Point, dan meng-assign suatu Point baru ke poin1.  Kemudian meng-assign poin2 dengan nilai dari poin1.

Output yang terjadi adalah :

Point 1 : 200,200

Point 2 : 200,200

Terlihat poin2 juga berubah.  Ketika kita meng-assign suatu nilai dari poin1 ke poin2, sesungguhnya kita menciptakan sebuah reference dari point2 menunjuk ke suatu object yang sama dengan poin1.

            poin1                                       Point Object

   

x : 200

y : 200




            poin2

Mendeklarasikan Class dan Variabel

Class adalah kumpulan kode atau cetak biru(blue print) dari suatu object.  Didalam cetak biru menerangkan sifat dari objek dan identitas suatu variable.

Sintax untuk mendeklarasikan class :

[‘public’] [(‘abstract’ | ‘final’)] class nama_class

{

     // sifat dari object dan identitas suatu variable dideklarasikan diantara {}

}

Menggunakan keyword public berarti class tersebut bisa di akses oleh class-class di seluruh package.  Perlu diingat jangan menggunakan public jika class dibuat hanya di akses oleh class-class dalam satu package dengan class itu sendiri.

Gunakan keyword abstract untuk mendefinisikan suatu class abstract dimana object tidak bisa diciptakan dari class abstract, kelas abstract dibuat untuk diturunkan(di subclass) bukan untuk diinstansiasi langsung.

Gunakan keyword final untuk mendefinisikan suatu class yang tidak dapat diturunkan.

Penamaan class biasanya menggunakan huruf capital untuk karakter pertamanya.

Contoh :

class Mhs {

}

Jika class adalah sub class dari class lain gunakan keyword extends.

class Mhs extends Mahasiswa {

}

Dapat diartikan Mhs adalah subclass dari Mahasiswa.

Deklarasi Variabel

Sintax Deklarasi variable :

[(public | private | protected)]

     [(final | volatile)]

         [static][transient]

              Tipe_data Nama_variabel [=ekspresi];

Contoh :

class Mahasiswa {

     String npm;

     int nilai;

}

Akses variable

Untuk akses dan scope variable digunakan keyword : public, private atau protected.

1.      Tanpa keyword

Jika tidak digunakan keyword diatas sebagaimana contoh dibawah ini :

class MyClass

{

     int nama;

}

Berarti : Hanya kode-kode yang terdapat dalam MyClass dan class-class lain yang dideklarasikan dalam package dimana MyClass dideklarasikan yang dapat mengakses variable nama.

2.      private

class Pegawai

{

     private double gaji

}

Berarti : Hanya kode-kode yang terdapat dalam class Pegawai yang dapat mengakses variable gaji.

3.      public

public class Pegawai

{

     public String nama;

}

Berarti : Kode-kode yang terdapat didalam class Pegawai dan class yang terdapat di dalam package lain dapat mengakses variable nama(class Pegawai harus dideklarasikan public juga agar dapat diakses class-class dalam package lain.

4.      protected

public class Pegawai

{

     protected String nama;

}

Berarti : Hanya kode-kode yang terdapat dalam class Pegawai dan class-class lain dalam satu package yang sama dengan class Pegawai dan seluruh sub class dari class Pegawai(yang dideklarasikan dalam package lain) dapat mengakses variable nama.

0 komentar on Menulis Program Java :

Post a Comment and Don't Spam!

 
Diberdayakan oleh Blogger.