Dalam bahasa Java atau pemrograman yang lain dikenal istilah Token. Token merupakan elemen terkecil di program yang masih memiliki arti. Dalam bahasa Java, memiliki 5 token,yaitu Identifier, keyword, literal dan tipe data, operator dan separator.
Identifier merupakan bagian dari program yang mereprentasikan nama sesuatu. Literal merupakan nilai variabel atau atribut atau nilai konstanta atau nilai objek data. Ada tiga besaran literal, yaitu angka ( byte, short, int, long, float,double, boolean) , karakter dan string . Keyword merupakan kata kunci yang digunakan untuk tujuan tertentu.Berikut ini contoh penggunaan identifier, atribut, kelas, modifier, literal dan keyword dalam suatu program.
( Example 1.1 )
//--------------------------
//Nama file : Modulus.java
//Penggunaan operator modulus (sisa pembagian)
//-------------------------------
public class Modulus // Atribut ( kelas & nama kelas )
{
public static void main(String[]args)
{
int a,b; // int merupakan contoh Literal angka
double c,d; // double merupakan contoh keyword
a = 9%2 ;
b = 6%3 ;
c = 9.7%2 ;
d = 6%3.2 ;
System.out.println ("9 modulus 2 adalah adalah = " +a);
System.out.println ("6 modulus 3 adalah adalah = " +b);
System.out.println ("9.7 modulus 2 adalah adalah = " +c);
System.out.println ("6 modulus 3.2 adalah adalah = " +d);
}
}
OUTPUT :
F:\>java Modulus
9 modulus 2 adalah adalah = 1
6 modulus 3 adalah adalah = 0
9.7 modulus 2 adalah adalah = 1.6999999999999993
6 modulus 3.2 adalah adalah = 2.8
Dalam Java dikenal 8 tipe data ,yaitu : byte, short, long, int, char, float, double dan Boolean. Operator merupakankomputasi terhadap satu atau dua objek data. Dan separator berfungsi menginformasikan ke compiler Java mengenai adanya kelompok kode program. Contoh tipe data, operator dan separator akan terlihat pada program berikut ini :
[ Example 1.2 ]
//-------------------------
//Nama file : Determinan.java
//Perhitungan determinan dengan operator aritmatika
//-------------------------
public class determinan
{
public static void main(String[]args)
{
int a,b,c,D; // pendefinisian variabel ( int = tipe data)
a = 2;
b = 3;
c = 10;
D = b*b-4*a*c; // * merupakan operator perkalian
System.out.print ("D = "+D) ; //Tanda ; merupakan separator
}
}
OUTPUT :
F:\>java determinan
D = -71
Dalam Java dikenal macam-macam keyword. Contohnya break, continue dan return. Keyword break berfungsi untuk kendali percabangan perulangan atau switch. Baerikut contoh penggunaannya dalam program :
[ Example 1.3 ]
//-------------------------
//Nama file : Break.java
//Contoh penggunaan break dalam perulangan for
//-------------------------
public class Break
{
public static void main(String[]args)
{
int i;
for (i=0 ; i<5>
{
System.out.println (i+ "Program Java ");
if (i==2)
break;
}
}
}
OUTPUT :
F:\>java Break
0Program Java
1Program Java
2Program Java
Keyword continue digunakan untuk melompat ke perulangan berikutnya. Maka program akan mengabaikan baris-baris program setelah keyword continue dalam blok perulangan. Berikut contohnya :
[ Example 1.4 ]
//-------------------------
//Nama file : Continue.java
//Contoh penggunaan continue dalam perulangan for
//-------------------------
public class Continue
{
public static void main(String[]args)
{
int i;
for (i=0 ; i<5>
{
if (i==3)
continue;
System.out.println (i+ "Program Java ");
}
}
}
OUTPUT :
F:\>java Continue
0Program Java
1Program Java
2Program Java
4Program Java
Keyword return digunakan untuk keluar dari suatu method. Kode program yang diimplementasikan dalam Java harus dikelompokkan dalam bentuk kelas(class).
[ Example 1.5 ]
//-------------------------
//Nama file : Keyword.java
//Contoh penggunaan Keyword Return
//-------------------------
public class keyword //kelas
{
private static int x; //integer,private,nama field=x
private static int y; //idem,nama field=y
private static int z; //idem,nama field=z
public static void Geser (int dx, int dy, int dz) // Method
{
x += dx;
y += dy; //Body Method
z += dz;
}
public int getX()
{
return x;
}
public int getY()
{
return y;
}
public int getZ()
{
return z;
}
public static void main (String[] Args)
{
Geser(1,2,3);
System.out.println(x+","+y+","+z);
}
}
OUTPUT :
F:\>java keyword
1,2,3
Pada method yang memberikan nilai kembalian, kita akan menjumpai kata kunci “return”. Kata dibelakang return merupakan nilai yang akan dikembalikan oleh method. Kita tetap dapat menggunakan kata kunci return pada method yang tidak memberikan nilai kembalian, dengan cara menuliskan : return ;
Dalam body setiap method dan konstruktor (akan dijelaskan nanti ) terdapat suatu variable impisit, yaitu variable yang tidak tampak dalamdefinisi kelas, tetapi sebenarnya ada. Variabel ini adalah bariabel This, digunakan oleh compiler untuk merujuk objek yang memanggil method atau konstruktor itu. Dalam Java kita juga diperbolehkan untuk melakukan deklarasi dandefinisi ulang. Hal ini disebut Overloading. Berikut contoh penggunaan Keyword This dalam sebuah program Overloading :
[ Example 1.6 ]
//-------------------------
//Nama file : over.java
//Contoh penggunaan overloading dan keyword This
//-------------------------
public class over
{
private int x; //integer,private,nama field=x
private int y; //idem,nama field=y
private int z; //idem,nama field=z
public over (int x, int y, int z)
{
this.x += x;
this.y += y;
this.z += z;
}
public void geser (int dx, int dy, int dz) // Geser titik pada ruang
{
x += dx;
y += dy;
z += dz;
}
public void geser (int dx) // Overload 1, hanya geser pada sumbu x
{
x += dx;
}
public void geser (int dx,int dy) // Overload 2, geser pada sumbu xy
{
x += dx;
y += dy;
}
public int getX()
{
return x;
}
public int getY()
{
return y;
}
public int getZ()
{
return z;
}
public void cetak()
{
System.out.println(x+","+y+","+z);
}
public static void main(String[] Args)
{
over coba = new over(1,2,3);
coba.geser(1,2);
coba.cetak();
coba.geser(3);
coba.cetak();
coba.geser(4,5,6);
coba.cetak();
}
}
OUTPUT :
F:\>java over
2,4,3
5,4,3
9,9,9
Construktor adalah bagian dari kelas yang digunakan untuk menciptakan/ menginstansi o bjek.Construktor mirip dengan method (memiliki parameter, memiliki blok, dapat di overload) namun namanya harus sama dengan nama kelas dan ia tidak mengembalikan nilai atau tipe tertentu,bahkan void sekalipun. Berikut contohnya :
[ Example 1.7 ]
//--------------------
// Nama file : Constuctor.java
// Contoh penggunaan constructor tanpa argumen
//--------------------
class constr
{
static final double pi = 3.14; // variabel kelas dengan nilai yang tetap
double radius ; // variabel objek
String warna ;
//constructor kelas
constr ()
{
}
//Metode untuk menghitung luas lingkaran
double hitungLuas ()
{
return pi * radius * radius;
}
public static void main (String[]args)
{
constr lingk = new constr() ; //membuat objek
//menampilkan luas objek
System.out.println ("Luas lingkaran = "+lingk.hitungLuas ());
System.out.println ("Warna lingkaran = "+lingk.warna);
}
}
OUTPUT :
F:\>java constr
Luas lingkaran = 0.0
Warna lingkaran = null
Salah satu konsep terpenting dalam PBO adalah konsep pewarisan (inheritance), dimanakita menciptakan kelas baru dari satu atau lebih kelas yang sudah ada. Kelas yang baru / kelas turunan akan sangat mirip dengan kelas induknya sehinggan jika anda ingin kelas turunan berbeda dengan induknya, anda harus menambahkan field atau method baru pada kelas tersebut. Berikut contoh program yang menggunakan Inheritance :
[ Example 1.8 ]
//---------------------
// Nama file : PajakApp.java
// Implementasi pewarisan atribut dan metoda
//---------------------
// super kelas Pajak
//---------------------
import java.io.*;
class Pajak
{
double pendapatan;
String provinsi;
public double hitungPajak()
{
double pajakUmum=0;
if (pendapatan <>
{
pajakUmum = pendapatan*0.05;
}
else
{
pajakUmum = pendapatan*0.06;
}
return pajakUmum;
}
}
//--------------------
// kelas PajakJateng
//--------------------
class PajakJateng extends Pajak
{
public double hitungPajakDaerah (double pajakUmum)
{
double pajakDaerah = pajakUmum - 50;
return pajakDaerah;
}
}
//-------------------
// Kelas pengendali
//-------------------
class inheritance
{
public static void main(String[]args)
{
Pajak t = new Pajak(); // membuat objek
t.pendapatan = 500000; // memberikan nilai
t.provinsi = "Jawa Tengah";
double pajakAnda = t.hitungPajak(); // menghitung pajak
PajakJateng t1 = new PajakJateng();
double pajakAndaDaerah = t1.hitungPajakDaerah(pajakAnda);
//Menampilkan hasil
System.out.println("Pajak Anda " + pajakAnda);
System.out.println("Tempat tinggal anda " + t.provinsi);
System.out.println("Pajak anda dengan potongan " + pajakAndaDaerah);
}
}
OUTPUT :
F:\>java inheritance
Pajak Anda 30000.0
Tempat tinggal anda Jawa Tengah
Pajak anda dengan potongan 29950.0
Paket atau Package merupakan bagian implicit standrart Java untuk mengelompokkan kelas dengan interface menjadi satu unit, yaitu koleksi dari kelas dengan nama tertentu. Tujuanya adalah untuk memudahkan dalam menambahkan kelas kedalam program. Pernyataan import memungkinkan kita untuk menggunakan kelas yang berada dalam paket lain kedalam proses kompilasi. Seluruh kelas atau satu kelas dalam paket dapat digunakan dalam satu saat. Contoh penggunaanya dapat dilihat dalam program berikut :
[ Example 1.8 ]
//-------------------
// Nama file : Package.java
//-------------------
import javax.swing.*;
public class Package
{
public static void main(String[]args)
{
int nilai;
String bilangan = JOptionPane.showInputDialog("Masukan nilai : ");
System.out.println ("Input angka : " +bilangan);
nilai = Integer.parseInt(bilangan);
if (nilai >= 60)
System.out.println("Nilai = " +nilai+" Lulus Ujian");
System.exit(0);
}
}
OUTPUT :
F:\>java Package
Input angka : 80
Nilai = 80 Lulus Ujian
-RIMA SUGMASARI - 11107460 - 3KA12 -