Struktur Dasar Pemrograman Java

advertisement
Pertemuan 2
Halaman 1/1
Struktur Dasar Pemrograman Java
Struktur Program Java
Comments
Comments digunakan untuk memberikan keterangan/penjelasan suatu baris program.
Comments tidak akan dikompilasi oleh compiler.
Lambang untuk comments :
• double slash ( // ) untuk memberikan penjelasan satu baris
• /* dan */ untuk memberikan penjelasan satu baris atau lebih.
Contoh :
public class tes {
public static void main(Strings [] args)
/*
System.out.println akan
mencetak ‘akan mencetak’
*/
{
//System.out.println(“tidak akan mencetak”);
System.out.println(“akan mencetak”);
}
}
Reserved words
Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh
compiler untuk keperluan pemrograman. Contoh reserved words class digunakan
untuk membuat class pada java.
Modifiers
Modifiers digunakan untuk menentukan penggunaan dari suatu data,methods
dan class. Contoh modifiers adalah public, static, private, final, abstract dan protected.
Statements
Statements merupakan baris perintah atau kumpulan perintah. Setiap
statements pada java selalu diakhiri dengan titik koma ( ; ).
Blocks
Blocks digunakan untuk membentuk suatu grup statements. Blocks diawali
dengan kurung kurawal buka ( { } dan kurung kurawal tutup ( } ). Blocks dapat
digunakan secara nested (blocks didalam blocks).
Classes
Classes merupakan inti dari program Java. Suatu class merupakan “blueprint”
untuk menciptakan suatu object.
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 2/2
Methods
Methods merupakan kumpulan dari statements yang melakukan suatu fungsi
atau operasi secara sekuens. Setiap java aplikasi harus mempunyai method main()
(kecuali applet). Method main() pada java selalu berbentuk :
public static void main(String [] args) {
//statements
}
Elemen Pembentuk Pada Java
Identifiers
Identifiers merupakan penamaan dalam pemrograman untuk variabel,
konstanta, method, class, dan package. Java merupakan bahasa pemrograman yang
case-sensitive (membedakan antara huruf besar dan kecil). Aturan penamaan
identifiers pada java adalah :
1. Dapat dimulai dengan huruf, underscore ( _ ) atau tanda $
2. Tidak dapat menggunakan simbol operator seperti : +, - , * , / dan lain-lain
3. Tidak dapat menggunakan reserved word
4. Dapat mempunyai panjang berapa saja.
Variables
Variables digunakan untuk input,output atau menyimpan hasil suatu proses
pada program. Untuk melakukan deklarasi suatu variables digunakan :
Datatype variableName;
Contoh : int angka;
double radius;
untuk mendeklarasi sekaligus melakukan inisialisasi digunakan :
Datatype variableName = value;
Constants
Constants merupakan data yang tidak berubah selama program berjalan.
Pendeklarasian konstanta menggunakan :
static final Datatype CONSTANTNAME = Value;
Contoh : static final double PI = 3.14159;
:
area = radius*radius*PI;
Ada tiga tipe variable yaitu :
• Tipe data primitif
• Tipe data class
• Array
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 3/3
Tipe data primitif pada java yaitu :
1. Numerik (bulat dan pecahan)
Untuk numerik bulat ada 4 macam yaitu :
tipe
Besar (bits)
jangkauan
byte
8
-128 ke 127
short
16
-32,768 ke 32,767
int
32
2,147,483,648 ke 2,147,483,647
long
64
-9,223,372,036,854,775,808 ke
-9,223,372,036,854,775,807
untuk numerik pecahan ada 2 macam yaitu :
tipe
Besar (bits)
jangkauan
float
32
-3.4E38 ke 3.4E38
double
64
-1.7E308 ke 1.7E308
numerik literal :
bulat
Pecahan
heksadesimal ( 0x ) ex. 0xCAFE
octal ( 0 ) ex. 0704
long (l atau L) ex. 100L atau 100l
float (f atau F) ex. 10.4F atau 10.0f
double (d atau D) ex. 10.4D atau 10.2d
Eksponen (e atau E) ex. 10e45 atau 0.3E2
2. Character
merupakan tipe data yang meyimpan satu buah karakter.
tipe
Besar (bits)
jangkauan
char
16
Unicode Character
untuk membuat character literal digunakan tanda kutip satu ( ‘ )
contoh : ‘a’ , ‘&’
Character escape codes pada java :
Escape
Arti
\n
newline
\t
tab
\b
backspace
\r
Carriage return
\f
formfeed
\\
backslash
\’
tanda kutip satu
\”
tanda kutip ganda
\ddd
octal
\xdd
Heksadesimal
\udddd
Unicode character
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 4/4
3. Boolean
merupakan tipe data yang hanya berisi true atau false
Tipe data class pada java merupakan tipe data yang dideklarasikan untuk menampung
instance (atau object yang dibuat dari class).
contoh : String lastName;
Circle myCircle;
Tipe data array digunakan untuk menampung beberapa tipe data yang sama dalam
sebuah nama variable yang mempunyai indeks. Array pada java merupakan object
yang dapat berisi tipe data primitif maupun class.
Pendeklarasian suatu array adalah :
Datatype [] arrayVariable = new DataType[length]; atau
DataType [][] arrayVariable = new DataType[length1][length2];
Contoh : int [] temp = new int[50];
int [][] temp = new int[2][3];
untuk inisialisasi :
Datatype [] arrayVariable = {value1, value2, …..};
Contoh : int [] temp = {1,4,2,3};
untuk mengakses elemen pada Array digunakan indeks (indeks array pada java
merupakan base 0)
Contoh :
public class TestArray {
public static void main(Strings []
int [] result = {3,2,6};
System.out.println(“result[0] =
System.out.println(“result[1] =
System.out.println(“result[2] =
args) {
“+result[0]);
“+result[1]);
“+result[2]);
}
}
Untuk melakukan konversi tipe data numerik dapat dilakukan secara implisit maupun
eksplisit. Java melakukan konversi data secara implisit untuk tipe data yang lebih
kecil ke tipe data yang lebih besar ketelitiannya.
Untuk melakukan konversi dari tipe data yang lebih besar tingkat ketelitiannya ke
tingkat yang lebih kecil dilakukan type casting yaitu (typename) value.
contoh :
float x = 1.0;
float y = 2;
float z = x / y -> implisit hasil akan menjadi float 0.5
float x = (float) 10.1;
int y = (int) x;
->eksplisit akan menjadi int 10
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 5/5
Ekspresi dan Operator
Ekspresi merupakan suatu statement yang mengembalikan suatu nilai
Operator merupakan Simbol yang digunakan dalam ekspresi
Operator Aritmatika pada Java :
Operator
+
*
/
%
Arti
Penambahan
Pengurangan
Perkalian
Pembagian
Modulus (Sisa bagi)
Contoh
3 + 4
5 – 7
5 * 5
14 / 7
20 % 7
Operator Penugasan (Asisgnment)
Operator
x
x
x
x
+= y
-= y
*=y
/=y
x
x
x
x
=
=
=
=
x
x
x
x
+
–
*
/
Arti
y
y
y
y
Operator Increament dan Decreament
Operator
--x atau x-++x atau x++
Arti
increament (x = x – 1)
decreament (x = x + 1)
Operator kondisi (Conditional)
Operator
==
!=
<
>
<=
>=
Arti
sama dengan
tidak sama dengan
lebih kecil
lebih besar
lebih kecil sama dengan
lebih besar sama dengan
Contoh
x
x
x
x
x
x
== 3
!= 3
< 3
> 3
<= 3
>= 3
Operator logika (Logical)
Operator
&&
||
!
^
Arti
and
or
not
xor
Contoh
x !=2 && x !=4
x > 2 || x < 5
!x
x == 2 ^ x==3
Operator bitwise
Operator
&
|
^
<<
>>
>>>
~
<<=
>>=
>>>=
&=
!=
^=
Bahasa Pemrograman I
Arti
bitwise and
bitwise or
bitwise xor
left shift
right shift
zero fill right shift
bitwise complement
left shift assignment
right shift assignment
zero fill right shift assignment
and assignment
or assignment
xor assignment
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 6/6
Operator Precedence
Operator precedence merupakan urutan pengerjaan suatu operator dalam suatu
ekspresi.
Operator
. [] ()
++ -- ! ~ instanceof
new (type) ekspression
* / %
+ << >> >>>
< > <= >=
== !=
&
^
|
&&
||
? :
Keterangan
() Parentheses digunakan untuk grup dari
ekspresi
[] brackets digunakan untuk mengakses
array
. dot digunakan untuk mengakses method
dan variabel dalam object
instanceof digunakan untuk mendeteksi
apakah suatu object merupakan “instant”
dari suatu class / subclass
new digunakan untuk menciptakan suatu
“instant” dari class
ternary operator (bentuk shorthand dari
if . . . then . . . else
= += -= *= /= %= ^=
&= |= <<= >>= >>>=
Flow Control
flow control digunakan untuk mengontrol aliran program.
if Conditional
digunakan untuk menguji suatu kondisi
if (Conditional) {
//true statements;
} else {
//false statements;
}
Contoh :
if (x ==3)
System.out.println(“3”);
else
System.out.println(“not 3”);
if..then..else shorthand :
Conditional statement ? true_result : false_result;
Contoh :
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 7/7
int smaller = x < y ? x : y;
switch Conditional
digunakan untuk menguji suatu kondisi dengan beberapa nilai
switch (variable) {
case test_value1 : statements for value1;
break;
case test_value2 : statements for value2;
break;
case test_valueN : statements for valueN;
break;
default : statement for case else;
}
for Loops
for(initialization; test; increament) {
//statements;
}
do..while Loops
do {
//statements;
} while(Conditional)
while Loops
while (Conditional) {
//statements;
}
break and continue Statement
break digunakan untuk keluar dari suatu loop sedangkan continue digunakan untuk
meneruskan suatu loop ke iterasi berikutnya.
Contoh :
break statements :
for(int i = 1; i<=10; i++) {
if(i==3)
break;
else
System.out.println(i);
}
continue statement :
for(int i = 1;i<=10;i++) {
if(i==3)
continue;
else
System.out.println(i);
}
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 8/8
Object Oriented Programming (OOP)
Object Oriented Programming merupakan paradigma pemrograman yang
menggunakan object-object yang saling berinteraksi untuk membentuk suatu aplikasi.
dengan teknik OOP kita mewujudkan dengan cara berpikir dari problem yang akan
diselesaikan ke dalam level aplikasi. Hal ini akan mempermudah pemodelan suatu
sistem sebenarnya ke dalam suatu sistem komputer.
Contoh :
Jika suatu aplikasi berbentuk sistem window maka object-object yang relevan adalah
scroll bars, button, dialog boxes, window dan lain-lain.
OOP mempunyai kelebihan pada :
1. Mengurangi kesalahan dalam pembuatan suatu sistem.
2. Mempercepat dan mempermudah pembuatan atau revisi suatu sistem.
Pengertian dari Class dan Object
•
Class merupakan suatu “blueprint” atau “cetakan” untuk menciptakan suatu
instant dari object. class juga merupakan grup suatu object dengan kemiripan
attributes/properties, behaviour dan relasi ke object lain.
Contoh : Class Person, Vehicle, Tree, Fruit dan lain-lain.
•
Object merupakan instant dari class yang unik dengan attibutes, behaviour,
identitas.
Contoh :
Dari class Fruit kita dapat membuat object Mangga, Pisang, Apel dan lain-lain.
•
Attributes merupakan nilai data yang terdapat pada suatu object yang berasal dari
class. Attributes merepresentasikan karakteristik dari suatu object.
Contoh :
pada Class Fruit terdapat attribute : warna, berat
pada object mangga : warna berisi kuning dan berat misalkan 0.25 kg
pada object apel : warna berisi merah dan berat misalkan 0.30 kg
•
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh
suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object.
Contoh : pada object mangga : terdapat method ambilRasa , kupasKulit dan lainlain.
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 9/9
Dalam OOP kita mengenal 4 konsep dasar dari OOP yaitu :
1. Abstraksi (abstraction)
Untuk memproses sesuatu dari dunia nyata dengan menggunakan komputer kita
harus menentukan ciri-ciri / sifat-sifat yang penting yang perlu direpresentasikan
ke dalam sistem komputer.
Ciri-ciri yang dipilih bergantung dari apa yang akan kita lakukan di dalam sistem
tersebut dan tergantung dari sudut pandang yang melihatnya.
Contoh :
untuk menentukan attribute suatu class mobil pada :
Kantor Polisi
Bengkel Mobil
No mesin
No registrasi pemilik
Pemilik
Waktu ganti oli
Besar pajak
Deskripsi servis
2. Enkapsulasi (encapsulation)
Merupakan pengabungan tipe data dan operasi yang bersangkutan menjadi satu
kesatuan.
keutuhan tipe data dijaga dengan adanya pengendalian akses pada attribute,
method pada suatu object. (information hiding)
3. Pewarisan (inheritance)
Merupakan penurunan suatu class yang lebih general menjadi suatu class yang
lebih spesifik atau perluasan dari suatu class.
Gambar 2.1. Contoh Pewarisan
dikenal dua macam istilah yaitu Superclass (parent class) dan subclass. Superclass
merupakan class awal yang lebih general sedangkan suatu subclass merupakan
class turunan dari class superclass yang lebih spesifik.
class yang meng-inherited parent classnya akan mendapat suatu warisan yang
sama berupa methods atau attributes dari parent class-nya.
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
Halaman 10/10
Contoh :
pada gambar 2.1. Vehicle merupakan Superclass dari Space Vehicle, Air Vehicle.
Human Powered dan SelfPowered merupakan subclass dari landVehicle.
4. polymorphism
Merupakan operasi yang sama dapat diterapkan pada class yang berbeda dapat
menghasilkan hasil yang berbeda. Untuk melakukan operasi yang sama diperlukan
jumlah parameter yang sama.
Contoh : ‘+’ operator
untuk penghitungan
• integer+integer
• integer+float
• integer+double
akan menhasilkan behaviour yang berbeda maka operator ‘+’ dapat dikatakan
polymorphic.
Aturan praktis untuk mengidentifikasi class adalah dengan cara mencari kata benda
dalam analisis masalah sedangkan untuk mencari methodnya dapat dihubungkan
melalui kata kerja.
Contoh : dalam suatu sistem pemrosesan pesanan
kata bendanya adalah :
• item
• pesanan
• alamat pengiriman
• pembayaran
• nomor rekening
sedangkan kata kerja :
menambah item pada pemesanan (AddItem dengan parameter Item)
Pemesanan dikirim atau pemesanan dibatalkan (CancelOrder)
Hubungan antar class
Hubungan yang paling umum diantara class-class adalah :
• use
suatu class (class A) dikatakan menggunakan class lain (Class B) jika :
method A mengirim pesan untuk suatu object dari class B atau
method A menciptakan, menerima, atau mengembalikan object dari Class B
•
containtment (memiliki sesuatu- / “has a- “)
suatu class dikatakan mempunyai hubungan containtment jika Object A berisi
Object B atau sedikitnya ada sebuah method dari class A yang akan
memanfaatkan object dari class B.
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Pertemuan 2
•
Halaman 11/11
inheritance (adalah sesuatu- “is a-”)
menunjukan spesialisasi dari suatu class / penurunan dari class lain.
Bahasa Pemrograman I
Struktur Dasar Pemrograman Java
Download