Anda di halaman 1dari 53

Pengenalan Bahasa Pemrograman

Java

Apa yang Disebut Java ?


Bahasa pemrograman berorientasi objek
murni yang dibuat berdasarkan
kemampuan-kemampuan terbaik bahasa
pemrograman objek sebelumnya (C++,
Ada, Simula).
Diciptakan oleh James Gosling,
developer dari Sun Microsystems pada
tahun 1991.

Karakteristik Java
Sederhana, semudah C dan seampuh C++: berlawanan
dengan anggapan orang-orang bahwa bahasa Java sulit
untuk dipelajari, Java gampang untuk dipelajari terutama
untuk orang yang sudah mengenal pemrograman tapi
belum terlalu terikat pada paradigma pemrograman
prosedural. Tentu saja ini berarti bahwa kita harus siap
mempelajari salah satu teknologi yang berkembang
paling cepat di dunia dalam dua tahun terakhir ini
dengan banyak membaca tentunya baik dari buku
maupun melalui web.

Karakteristik Java
Sangat berorientasi obyek (OOP) dengan
implementasi yang sangat baik
Arsitekturnya yang kokoh dan pemrograman
yang aman. Dalam Java program yang kita buat
tidak mudah untuk hang karena konflik pada
memori biasanya diselesaikan dengan
mengumpulkan obyek-obyek yang sudah tak
terpakai lagi secara otomatis oleh garbage
collector. Penanganan kesalahan juga
dipermudah dalam Java dengan konsep
Exception
4

Karakteristik Java
Bukan sekedar bahasa tapi juga platform sekaligus arsitektur.
Java
mempunyai portabilitas yang sangat tinggi. Ia dapat berada
pada smartcard, pager, POS (Point of Service), handphone, PDA,
palm, TV, Embedded device (PLC, micro controller), laptop, pc,
dan bahkan server). Menyadari akan hal ini 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
Standard Java (J2SE), ini adalah yang biasa kita kenal sebagai
bahasa Java, dan merupakan fokus kita sekarang.
Micro Java (J2ME) merupakan subset dari J2SE dan salah satu
aplikasinya yang banyak dipakai adalah untuk wireless
device/mobile device

Karakteristik Java
Program Java dijalankan menggunakan
interpreter melalui Java Virtual machine (JVM).
Hal ini menyebabkan source code Java yang
telah dikompilasi menjadi Java bytecodes dapat
dijalankan pada platform yang berbeda-beda.
Fitur-fitur utama yang lain:
- Mendukung multithreading.
- Selalu memeriksa tipe obyek pada saat
runtime.

Java Sun Microsystem


Java 2 Software Developer Kit (J2SDK)

Windows
SPARC
X86 Solaris
Linux

Versi terbaru Java SE 6

Bagaimana Java Bekerja ?

Bagaimana Java Bekerja ? ( lanjutan )

Java Platform
Platform dapat diartikan sebagai lingkungan perangkat
keras atau perangkat lunak dimana program dijalankan.
Umumnya platform berdasarkan nama sistem operasi
yang digunakan, misalnya Windows 2000, Linux, Solaris,
atau MacOS.
Platform Java mempunyai dua komponen, yaitu:
Java Virtual machine (Java VM)
Merupakan fondasi untuk platform Java yang dapat
digunakan di berbagai platform perangkat keras.
Java Application Programming Interface (Java API)
Kumpulan komponen-komponen perangkat lunak siap
pakai (ready-made software components) untuk berbagai
keperluan
10

Membuat Program Java


Persiapan

Download dan Instalasi J2SDK


Setting jalur eksekusi

Penulisan program:

Menulis program
Kompilasi
Eksekusi

11

Persiapan
Download dan Installasi J2SDK
http://java.sun.com/javase/downloads/

Setting jalur eksekusi


Settings Control Panel System Advanced
Environment Variables

12

Identifier di Java

Identifier adalah nama yang diberikan kepada variabel, method, kelas,


paket, dan interface
Adapun tatacara penamaan identifier:
1. Case sensitive, huruf kapital dan kecil dibedakan
2. Identifier yang diberikan oleh pemrogram tidak boleh sama dengan
keyword yang ada di Java
3. Dimulai dengan huruf atau underscore (garis bawah) atau tanda ($).
Namun sebisa mungkin diawali dengan huruf karena mungkin
identifier dengan awalan underscore dan ($) digunakan unruk
pemrosesan internal dan file import
4. Karakter berikutnya dapat berupa huruf atau angka 0 sampai 9.
Simbol-simbol seperti + dan spasi tidak dapat digunakan

13

Keywords di Java

Keyword adalah identifier yang digunakan Java untuk suatu


tujuan khusus. Daftar keyword Java adalah sebagai berikut:
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

14

Contoh Penulisan Nama Variabel


yang Diizinkan

@2var
_status
tanggal
jumlahBarang
nama_kecil
final_test
int_float
15

Tipe Data di Java


Tipe data dalam Java dibagi dalam
dua kategori:
1. Sederhana (primitif)
2. Komposit (referensi)

16

Tipe data sederhana (primitif)


Tipe data sederhana merupakan tipe inti. Tipe
sederhana tidak diturunkan dari tipe lain.
Terdapat delapan tipe data primitif di Java:
- Empat tipe adalah untuk bilangan
bulat (integer) : 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
17

Tipe data sederhana (primitif)


Integer:
Tipe
Data
byte
short
int

long

Panjan
Rentang Nilai
g
8 bit
-27 sampai 27 - 1
(-128 sampai 127 )
(256 kemungkinan nilai)
16 bit -215 sampai 215 - 1
(-32.768 sampai 32.767)
(65.535 kemungkinan nilai)
32 bit -231 sampai 231 - 1
( -2.147.483.648 sampai
2.147.483.647)
(4.294.967.296 kemungkinan
nilai)
64 bit -2-63 sampai 263 - 1
( -9.223.372.036.854.775.808
sampai
9.223.372.036.854.775.807)
(18.446.744.073.709.551.616
kemungkinan nilai)

Contoh Nilai
5
-126
9
-23659
2067456397
-1456398567

3L
2147483648L
67L
18

Tipe data sederhana (primitif)


Floating Point:
Tipe data floating point merupakan tipe data untuk
untuk variabel yang nilai-nilainya adalah bilangan real
(dapat mempunyai pecahan desimal).
Tipe
Data

Panjang

float

32 bit

double

64 bit

Contoh Penulisan
Nilai yang
Diperbolehkan
78F
-34736.86F
6.4E4F ( sama dengan
6,4 x 104 )
-2356
3.5E7
67564788965.567
19

Tipe data sederhana (primitif)


Char:
Tipe data textual merupakan tipe data untuk variabel yang
nilai-nilainya adalah karakter tunggal. Tipe data yang
merupakan tipe data textual adalah char yang memiliki panjang
16 bit. Nilai variabel char ditulis dengan diberi tanda kutip
tunggal .... Berikut contoh penggunaan tipe data char :
public char alphabet = A;
public char ascii = \111; // jika dicetak, akan menghasilkan
// huruf I;

20

Tipe data sederhana (primitif)


Logika (Boolean):
Tipe data logika adalah tipe data yang hanya memiliki 2
kemungkinan nilai, yaitu true atau false. Hanya satu tipe data
logika pada teknologi Java, yaitu boolean. Berikut contoh
penggunaan tipe data boolean :
public boolean status = true;
public boolean check = 10 < 5 ; // nilai check menjadi
// false

21

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;

22

Promosi dan Casting


Promosi adalah proses pengubahan representasi bit variabel
primitif dari representasi bit yang lebih rendah ke
representasi bit yang lebih tinggi. Promosi dapat terjadi
apabila :
a. Jika terjadi assigning nilai dari tipe data dengan
representasi bit yang lebih kecil ke tipe data dengan
representasi bit yang lebih besar, seperti yang
diperlihatkan pada contoh berikut ini:
short a = 12;
int b = a ;

23

Promosi dan Casting


b. Jika terjadi assigning nilai dari tipe data integral ke tipe
data floating-point, seperti yang diperlihatkan pada
contoh
int a = 30;
float b = a ;

24

Promosi dan Casting


Casting tipe merupakan proses pengubahan representasi
bit variabel primitif dari representasi bit yang lebih tinggi
ke representasi bit yang lebih rendah. Sintak dari type
casting adalah sebagai berikut :
identifier = (target_type) value ;
ket:
identifier = nama variabel yang menjadi tempat
penyimpanan nilai;
target_type = tipe data yang diinginkan menjadi tipe
data dari value;
value = nilai yang akan di-casting.
25

Promosi dan Casting


Berikut contoh casting tipe
int num1 = 34;
int num2 = 45;
short num3 = (short)(num1 + num2 );
System.out.println(num3);

26

Operator di Java
Operator Unary
Arti
Operator
PreIncrement

Operato
Contoh
r
Pemakaian
+
int i = 8 ;
+operand int j = ++i;
9,

PostIncrement

i
bernilai
bernilai 9
operand+ int i = 8;
+
int j = i++;
i
bernilai
bernilai 8
--operand int i = 8 ;

9,

PreDecrement

PostIncrement

int j = --i;
i bernilai
bernilai 7
operand-- int i=8;

7
27

Operator Binary
Arti
Operator

Operator

Penjumlahan

sum=num1
num2

Pengurangan

diff=num1
num2

Perkalian

prod=num1
num2

Pembagian

quot=num1
num2

/ jika num1 dan num2 adalah


integer,
pembagian
akan
menghasilkan nilai integer tanpa
mengikutsertakan
sisa,
jika
terdapat sisa.

mod=num1
num2

% Hasil operasi modulus adalah sisa


dari operasi num1 / num2.

Sisa
(modulus)

Contoh
Pemakaian

Keterangan

Hasil operasi modulus memiliki


tanda ( +/- ) yang sama dengan
operand pertama

28

Prioritas Operator
operator yang berada dalam tanda kurung ( ... ) atau
disebut juga parantheses;
operator-operator increment atau decrement;
operator - operator perkalian atau pembagian, yang
urutan operasinya dari kiri ke kanan;
operator-operator penjumlahan atau pengurangan, yang
urutan operasinya dari kiri ke kanan;

29

Contoh
int c = 12 * 3 +5 / (8 - 3) ;
Maka urutan operasinya adalah sebagai berikut :

int c = 12 * 3 + 5 / 5 ;
int c = 36 + 5 / 5;
int c = 36 + 1 ;
int c = 37;

30

Operator Relasi
Condition

Operat
or

Is equal to
(atau is the same
as)
Is not equal to

==

(atau is not the


same as)

!=

Is less than

<

Is less than or equal


to
Is greater than
Is greater than or
equal to

<=
>
>=

Example
int i = 1;
System.out.println(i==1);
: true)

// (output

int i = 1;
System.out.println(i!=1); // (output
: false)
int i = 1;
System.out.println(i<1); //
(output : false)
int i = 1;
System.out.println(i<=1); //
(output : true)
int i = 1;
System.out.println(i>1); //(output :
false)
int i = 1;
System.out.println(i>=1); // (output
: true)
31

Operator kondisional
Condition
If one condition
another condition

If either condition
another condition

NOT

AND

OR

Operator
&&

Example
int i = 1;
int j = 2;
System.out.println((i<1)&&(j>0));
// (output : false)

||

int i = 1;
int j = 2;
System.out.println((i<1)||(j>0));
// (output : true)

int i = 1;
System.out.println(!(i<3));
// (output : false)

32

Kata Kunci Final


Dalam aplikasi terkadang
dibutuhkan suatu variabel yang
dicegah untuk dimodifikasi oleh
program lainnya. Hal ini dilakukan
untuk menjaga agar logika program
tetap terjaga. Untuk membuat
konstanta, digunakan sebuah
modifier final.
33

Kata Kunci Final


Contoh
class Lingkaran{
final double pi = 3.14; //konstanta yg nilainya tidak
dapat
//diubah lagi oleh program lain
double jari2;
double luas;
public double hitungLuas(){
luas = pi*jari2*jari2;
return luas;
}
public double hitungKeliling(){
return 2*pi*jari2;
}
}
34

Konstruksi Pengambilan
Keputusan
Konstruksi if
Konstruksi if merupakan bentuk konstruksi pengambilan
keputusan dengan 2 kemungkinan keputusan. Kemungkinankemungkinan keputusan itu akan dipilih berdasarkan suatu
kondisi yang diperiksa. Kondisi tersebut merupakan suatu
ekspresi boolean / boolean expression.
Sintaks dasarnya:
if ( boolean_expression ){
code block;
}

35

36

Contoh:
public class HasilUjian{
public static void main(String[] args){
int nilai1 = 8;
int nilai2 = 7;
int nilai3 = 5;
float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3;
if(rata_rata<5){
System.out.println(Tidak Lulus);
}
System.out.println(Nilai Rata-rata = +rata_rata);
}
}

37

Konstruksi if..else..
Konstruksi if / else digunakan sebagai konstruksi
pengambilan keputusan yang memiliki beberapa
kemungkinan keputusan. Sintak dasarnya adalah seperti
berikut :
if ( boolean_expression_1 ){
code block 1;
} else if ( boolean_expression_2 ){
code block 2;
}
.
.
.
else{
code block n;
}

38

39

Contoh
public class HasilUjian{
public static void main(String[] args){
int nilai1 = 8;
int nilai2 = 7;
int nilai3 = 5;
float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3;
if(rata_rata<5){
System.out.println(Tidak Lulus);
} else if ((rata_rata>=5) && (rata_rata<6)){
System.out.println(Harus ikut ujian perbaikan);
} else { // rata_rata >= 6
System.out.println(Lulus);
}
System.out.println(Nilai Rata-rata = + rata_rata);
}
}
40

Konstruksi Switch
Konstruksi switch adalah konstruksi pengambilan keputusan
yang mengevaluasi kemungkinan-kemungkinan nilai dari
variabel yang dievaluasi. Bentuk umum syntax konstruksi
switch adalah sebagai berikut:
switch( variabel ) {
case nilai_literal_1 :
code_block_1;
break;
case nilai_literal_2 :
code_block_2;
break;
.
.
default:
code_block_default;
break;
}

41

Keterangan:
switch adalah kata kunci yang mengindikasikan dimulainya
konstruksi switch;
variabel adalah variabel yang nilainya akan dievaluasi.
variabel hanya dapat bertipe-data char, byte, short, atau
int;
case adalah kata kunci yang mengindikasikan sebuah nilai
yang diuji. Kombinasi kata kunci case dan nilai_literal
disebut case label;
nilai_literal_k adalah nilai yang mungkin akan menjadi nilai
variabel. nilai_literal_k tidak dapat berupa variabel,
ekspresi, atau method, tetapi dapat merupakan konstanta.
k = {default, 1,2,...,n };
break adalah pernyataan yang sifatnya opsional, yang
mengakibatkan aliran program keluar dari blok switch. Jika
setelah code_block_k tidak terdapat pernyataan break,
maka aliran program akan masuk ke case berikutnya. k =
{default, 1,2,3,...,n};
default adalah kata kunci yang mengindikasikan
code_block_default akan dieksekusi jika semua case yang
42
diuji tidak sesuai dengan nilai variabel .

Contoh:
public class HasilUjian{
public static void main(String[] args){
int nilai1 = 8;
int nilai2 = 7;
int nilai3 = 5;
float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3;

switch((int)rata_rata){
case 0 :
case 1 :
case 2 :
case 3 :
case 4 :
System.out.println(Tidak Lulus);
break;
case 5 :
System.out.println(Ikut ujian perbaikan);
break;
default :
System.out.println(Lulus);
break;
}
System.out.println(Nilai Rata-rata = + rata_rata);
}
}

43

Konstruksi Pengulangan (looping)


While
Konstruksi while adalah konstruksi pengulangan yang jumlah
perulangannya tergantung pada suatu kondisi logika
tertentu. Bentuk umum konstruksi while adalah sebagai
berikut :
while(boolean_expression){
code_block;
} //akhir dari konstruksi while

44

Pada konstruksi while, langkah-langkah proses


perulangannya adalah sebagai berikut :
Sistem memeriksa boolean_expression.
Jika nilai boolean_expression adalah true, maka
code_block akan dieksekusi. Jika tidak, maka code_block
tidak dieksekusi.
Jika di dalam code_block terdapat pernyataan kondisi
yang menyebabkan proses harus keluar dari blok while,
maka proses akan keluar dari pengulangan, meskipun
boolean_expression masih bernilai true.

45

Contoh:
public class Contoh1{
public static void main(String[] args){
int num1 = 0;
int num2 = 23;
int num3 = num1+num2;
while(num3 > num1){
num2-=3;
num1+=2;
num3 = num1+num2;
System.out.println(num1=+num1+,num3=+num3);
}
}
}

46

public class Contoh9_2 {


public static void main(String[] args){
int variable = 20;
while(true){
System.out.println(Nilai variable = +variable);
--variable;
if(variable<10){
break;
}
}
}
}

47

Konstruksi for
Bentuk umum dari konstruksi loop menggunakan for adalah :
for(initialize[,initialize];boolean_expression; update[,update]){
code_block;
}

bagian inisialisasi, yang berisi pernyataan pemberian


nilai awal untuk suatu variabel parameter;
bagian boolean_expression, yang berisi pernyataan logika
yang akan diperiksa, sebagai syarat pengulangan terus
dilanjutkan. Pengulangan akan dilanjutkan jika nilai
ekspresi boolean pada segmen ini bernilai true.
bagian update, yang berisi pernyataan updating
parameter ketika satu putaran pada pengulangan selesai
dieksekusi.
48

bagian inisialisasi dapat diisi dengan


lebih dari 1 pernyataan inisialisasi;
bagian boolean_expression hanya
dapat diisi oleh 1 pernyataan
logika;
bagian update dapat diisi dengan
lebih dari 1 pernyataan update.

49

Contoh
public class Contoh3{
public static void main(String[] args){
for(int variable=20; variable>=10;variable--){
System.out.println(Nilai variable =+ variable);
}
}
}

50

public class Contoh4{


public static void main(String[] args){
for(int variable1=20, variable2=0; variable1>=10&&
variable2<=5;variable1--,variable2++){
System.out.println(Nilai variable1= + variable1);
System.out.println(Nilai variable2= +variable2);
}
}
}

51

public class Contoh5{


public static void main(String[] args){
int variable = 20;
for( ;
; ){
System.out.println(Nilai variable1= +variable);
variable--;
if(variable<10)break;
}
}
}

52

Konstruksi dowhile
Konstruksi Pengulangan do/while mirip dengan konstruksi
while. Perbedaannya adalah pada urutan prosesnya, yaitu :
Looping dijalankan terlebih dahulu;
Dilakukan pemeriksaan kondisi.
public class Contoh6{
public static void main(String[] args){
int variable = 20;
do{
System.out.println(Nilai variable1= + variable);
variable--;
}while(variable>20);
}
}
53

Anda mungkin juga menyukai