03 java programming

41
Pemrograman Berorientasi Objek P3: Pemrograman Java HP 1

Upload: dantik-puspita

Post on 04-Jul-2015

1.472 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 03 java programming

Pemrograman Berorientasi Objek

P3: Pemrograman Java

HP

1

Page 2: 03 java programming

Topik hari ini

Konsep class dan obyek

Bahasa pemodelan: class diagram

• Review algoritma pemrograman

• Konvensi Pemrograman Java

• Tipe & variabel

• Alur program sekuensial (cek contoh di modul praktikum)

• Konstruksi percabangan (cek contoh di modul praktikum)

• Konstruksi perulangan (cek contoh di modul praktikum)

Bahasa Java:

2

Page 3: 03 java programming

Referensi hari ini

• Blaha, Michael; Rumbaugh, James. Object-Oriented Modelling and Design with UML. Pearson Education Inc. 2005

Bahasa pemodelan:

• Course SL-110-SE6 (Fundamentals of the JavaTMProgramming Language) Modul 3,4 (2007)

• The JavaTM Tutorial: Bab “Getting Started” & “Language Basics”, 2009

Modul Java diambil dari:

3

Page 4: 03 java programming

1. Konsep class & obyek

• Objek-objek dalam kelas yang sama akan memiliki atribut dan operasi sejenis, meskipun nilainya bisa jadi berbeda.

Class = cetak biru untuk membuat objek.

• atribut merk, warna dan status (on atau off)

• Method: ganti status dan ganti warna.

Contoh class: laptop

• Objek ke-1: Laptop Toshiba, warna biru, status on. Jika dilakukan operasi penggantian status, maka laptop akan off.

• Objek ke-2: Laptop Axioo, warna hitam, status off. Laptop bisa dikenai operasi penggantian warna menjadi merah.

Contoh obyek:

4

Page 5: 03 java programming

Contoh –dari fastabiq(aplikasi showroom)

Class: mobil

Atribut: bahan bakar, warna, merk, tahun pembuatan, kondisi, PLAT, nmr mesin

Method: ganti pemilik, ganti plat nomor

Contoh:

1: mobil Alphard, putih, tahun 2011, baru, pertamaxplat baru

2: mobil Isuzu Panther, hitam, tahun 2000, second, solar; berganti pemilik dan plat nomor

5

Page 6: 03 java programming

Contoh bermasalah

Class : mobil

Atribut: tipe

VALUE : Alphard, Panther

6

Page 7: 03 java programming

Belajar dengan kertas origami

Silakan buat contoh class dan obyeknya!

7

Page 8: 03 java programming

2. Bahasa pemodelan

• Yang berlaku sekarang: UML 2.0

• Telah disetujui tahun 2004 oleh OMG (Object Management Group).

Standar UML

• diagram kelas,

• diagram state,

• diagram use case,

• diagram sekuens dan

• diagram aktivitas.

Paling populer:

• diagram yang memodelkan struktur statis dari sebuah sistem.

Diagram kelas (class diagram):

8

Page 9: 03 java programming

Diagram Kelas

• bentuk kotak

• 3 baris berisi:

• nama,

• daftar atribut, dan

• daftar method

Gambar Class :

• bi-directional association (asosiasi 2-arah)

• inheritance (pewarisan sifat)

• agregasi atau komposisi.

Diagram kelas juga memuat asosiasi yang terjadi antar kelas.

9

Page 10: 03 java programming

Contoh diagram kelas

Ini aplikasi apa ya?

10

Page 11: 03 java programming

3. Review Pemrograman Java

• Object-oriented

• Plaftorm-independent (Write Once, Run Anywhere)

• Simple, multithread, distributed

Konsep kunci:

11

Page 12: 03 java programming

Maksud Object-oriented ?

Prosedural Object-oriented

12

Page 13: 03 java programming

C dan platformnya

Bahasa C

13

Page 14: 03 java programming

Java dan Platform-Independent

14

Page 15: 03 java programming

4. Kaidah & Konvensi di Java

Contoh penulisan....

15

Page 16: 03 java programming

Penamaan Variable

• Contoh: length ≠ Length

Case-sensitive

• Contoh: length, not l

Gunakan full words (penuh makna, karena milik obyek)

• Contoh: length, currentLength

Jika 1 kata: semuanya huruf kecil. Lebih dari itu, kapitalkan huruf pertama dari kata berikutnya.

16

Page 17: 03 java programming

Comments?

Single-line Multi-lineClass

parameter's comments

17

Page 18: 03 java programming

Java Keywords

18

Page 19: 03 java programming

5. Struktur Class di Java

• Deklarasi class

• Deklarasi dan inisialisasi (opsional) untuk variabel

• Method (opsional)

• Comment (opsional)

Terdiri dari:

SL-110-SE6 Modul 3 slide 15

19

Page 20: 03 java programming

Sebutkan struktur dari class ini!

SL-110-SE6 Modul 3 slide 5

20

Page 21: 03 java programming

TIPE DATA

21

Page 22: 03 java programming

Tipe Data (Primitif)

Integral types (byte, short, int, and long)

Floating point types (float and double)

Textual type (char)

Logical type (boolean)

22

Page 23: 03 java programming

A. Integer

23

Page 24: 03 java programming

B. Floating (desimal)

24

Page 25: 03 java programming

C. Teks

Satu-satunya: char

Untuk SATU karakter (16 bits)

25

Page 26: 03 java programming

D. Lojik

Tipe data satu-satunya: boolean

Hanya menyimpan true atau false

Bisa menyimpan hasil dari sebuah

ekspresi yang bernilai true atau

false

26

Page 27: 03 java programming

V A R I A B E L

27

Page 28: 03 java programming

Variabel

Menyimpan data unik dari sebuah instance obyek

• Laptop dosen: untuk variabel merk bernilai HP.

Bisa untuk transfer nilai dari variabel lain

Merepresentasikan nilai dalam ekspresi matematis

Menampilkan nilai ke layar

Menyimpan referensi ke obyek lainnya

28

Page 29: 03 java programming

Syntax Variabel

• [modifiers] type identifier [= value];

Syntax (attribute or instance variables):

• type identifier;

Syntax (local variables):

• type identifier [= value];

Syntax (local variables)

• public int shirtID = 0;

• public String description = "-description required-";

• public char colorCode = ’U’;

• public double price = 0.0;

• public int quantityInStock = 0;

Examples:

29

Page 30: 03 java programming

Assigning Value to Variable

• type identifier = value [, identifier = value];

Syntax:

Contoh:

double price = 12.99;

double price = 0.0, wholesalePrice = 0.0;

int ID = 0;

int saleID = ID;

float numberOrdered = 908.5F;

float casePrice = 19.99F;

float price = (casePrice * numberOrdered);

int hour = 12;

boolean isOpen = (hour > 8);

30

Page 31: 03 java programming

Variabel vs Constant

Variable (bisa berubah):

• double salesTax = 6.25;

Constant (tidak bisa berubah):

• final double SALES_TAX = 6.25;

Panduan: Konstanta sebaiknya ditulis dalam huruf kapital; dan pemisah antar katanya berupa underscore (_).

31

Page 32: 03 java programming

O P E R A T O R

32

Page 33: 03 java programming

Operator Matematis (1)

33

Page 34: 03 java programming

Operator Matematis (2)

34

Page 35: 03 java programming

Increment & Decrement (++, --)

Biasanya: age = age + 1;

35

Page 36: 03 java programming

Berapa hasilnya ???

int count=15;

int a, b, c, d;

a = count++;

b = count;

c = ++count;

d = count;

System.out.println(a + “, “ + b + “, “ + c + “, “ + d);

36

Page 37: 03 java programming

Aturan presedensi

Operator di dalam pasangan tanda kurung (parentheses)

Operator Increment dan decrement

Operator perkalian dan pembagian, dari kiri ke kanan.

Operator penambahan dan pengurangan, dari kiri ke kanan

37

Page 38: 03 java programming

Jika dengan tanda KURUNG

c = (((25 - 5) * 4) / (2 - 10)) + 4;

c = ((20 * 4) / (2 - 10)) + 4;

c = (80 / (2 - 10)) + 4;

c = (80 / -8) + 4;

c = -10 + 4;

c = -6;

38

Page 39: 03 java programming

Java assumption

• PERTAMA: nilainya otomatis dikonversi ke int.

Menggunakan tipe data primitif untuk operator2 tertentu (*, /, -, +, %),

39

Page 40: 03 java programming

Float Assignment

• float float1 = 27.9;//compiler error

Contoh masalah yang bisa saja terjadi:

• Gunakan F:sehingga 27.9 itu float :

• float float1 = 27.9F;

Contoh kemungkinan solusi:

40

Page 41: 03 java programming

Kerjakan worksheet

WARMING UP !

41