• Tidak ada hasil yang ditemukan

Mata Kuliah OOP -- Kontrak

N/A
N/A
Protected

Academic year: 2018

Membagikan "Mata Kuliah OOP -- Kontrak"

Copied!
15
0
0

Teks penuh

(1)

Object

Object-- Oriented

Oriented

Programming ( OOP)

Programming ( OOP)

Romi Satria Wahono

Romi Satria Wahono

romi@romisatriawahono.net

romi@romisatriawahono.net

http://romisatriawahono.net

http://romisatriawahono.net

YM:

YM: romi_sw

romi_sw

1

z

z

Lahir di Madiun, 2 Oktober 1974

Lahir di Madiun, 2 Oktober 1974

z

z

SD Sompok

SD Sompok

Semarang (1987)

Semarang (1987)

z

z

SMPN 8

SMPN 8

Semarang (1990)

Semarang (1990)

z

z

SMA Taruna Nusantara

SMA Taruna Nusantara

, Magelang (1993)

, Magelang (1993)

z

z

S1, S2 dan S3 (on

S1, S2 dan S3 (on--leave) dari

leave) dari Department

Department of Computer

of Computer

Romi Satria Wahono

Romi Satria Wahono

2

,

da

,

da

a

a

da

da

pa

pa

pp

Sciences,

Sciences,

Saitama University

Saitama University

, Japan (1994

, Japan (1994--2004)

2004)

z

z

Core Competence:

Core Competence:

Software

Software Engineering

Engineering

, eLearning

, eLearning

System, Knowledge Management

System, Knowledge Management

z

z

PNS

PNS di

di

Lembaga

Lembaga Ilmu

Ilmu Pengetahuan

Pengetahuan Indonesia

Indonesia

z

z

Founder

Founder dan

dan Koordinator

Koordinator

IlmuKomputer.Com

IlmuKomputer.Com

z

z

CEO

CEO

PT Brainmatics Cipta Informatika

PT Brainmatics Cipta Informatika

Mata Kuliah OOP

Mata Kuliah OOP -- Kontrak

Kontrak

z

z

Pertemuan di Kelas:

Pertemuan di Kelas:

z

z Kuliah model tutoringKuliah model tutoring, konsep diberikan dan langsung , konsep diberikan dan langsung

praktek dilakukan praktek dilakukan

z

z Ketidakhadiran diperbolehkanKetidakhadiran diperbolehkan, hanya , hanya tidak akan ada tidak akan ada pengulangan bahasan

pengulangan bahasanbagi yang tidak hadirbagi yang tidak hadir

z

z

Penilaian Mata Kuliah:

Penilaian Mata Kuliah:

Penilaian Mata Kuliah:

Penilaian Mata Kuliah:

z

z Nilai Total dari Nilai Total dari TM TM -- UTS UTS –– UASUAS z

z Tugas harus diupload Tugas harus diupload di University.RomiSatriaWahono.Netdi University.RomiSatriaWahono.Net

z

z

Modul Kuliah dan Pengiriman Tugas:

Modul Kuliah dan Pengiriman Tugas:

z

z eLearning System: eLearning System: http://university.romisatriawahono.nethttp://university.romisatriawahono.net z

z Course Name: Course Name: ObjectObject--Oriented ProgrammingOriented Programming z

z Enrolment Key: Enrolment Key: oopoop

3

Mata Kuliah OOP

Mata Kuliah OOP -- Materi

Materi

1.

1.

OOP Concepts

OOP Concepts

::

Konsep Pemrograman dan paradigma Object

Konsep Pemrograman dan paradigma Object--Oriented Oriented

2.

2.

Java Fundamentals

Java Fundamentals

::

Bagaimana Membuat Program dengan Java Bagaimana Membuat Program dengan Java

J

Ad

d

J

Ad

d

3.

3.

Java Advanced

Java Advanced

::

Eksepsi, Thread, Java API Eksepsi, Thread, Java API

4.

4.

Java GUI

Java GUI

::

GUI Component, Swing, Event Handling GUI Component, Swing, Event Handling

4

OOP Concepts

OOP Concepts

5

Materi Diskusi

Materi Diskusi

1.

1.

Konsep Pemrograman dan Paradigmanya:

Konsep Pemrograman dan Paradigmanya:

Tingkat Bahasa Pemrograman, Paradigma Pemrograman, Tingkat Bahasa Pemrograman, Paradigma Pemrograman, Tool Pemrograman

Tool Pemrograman

2.

2.

Konsep

Konsep Dasar

Dasar Pemrograman

Pemrograman Berorientasi

Berorientasi Ob

Obyyek

ek::

Kelas (Class), Obyek (Object), Pengkapsulan Kelas (Class), Obyek (Object), Pengkapsulan

(Encapsulation) Pewarisan (Inheritance) Keyword This (Encapsulation) Pewarisan (Inheritance) Keyword This

6

(Encapsulation), Pewarisan (Inheritance), Keyword This, (Encapsulation), Pewarisan (Inheritance), Keyword This, Constructor

Constructor

3.

3.

Konsep Lanjut

Konsep Lanjut Pemrograman

Pemrograman Berorientasi

Berorientasi Obyek

Obyek::

Polymorphisme (Overloading dan Overriding), Package, Polymorphisme (Overloading dan Overriding), Package, Interface

(2)

Konsep Pemrograman

Konsep Pemrograman

dan Paradigmanya

dan Paradigmanya

7

Bahasa Pemrograman?

Bahasa Pemrograman?

z

z

Komputer bekerja seperti

Komputer bekerja seperti

switching

switching

dan hanya

dan hanya

mengenali 0 dan 1

mengenali 0 dan 1

z

z

Manusia

Manusia

tidak (paham) berbicara

tidak (paham) berbicara

dengan bahasa

dengan bahasa

0 dan 1

0 dan 1

P l b h

p

d p t

j di

P l b h

p

d p t

j di

z

z

Perlu bahasa pemrograman yang dapat menjadi

Perlu bahasa pemrograman yang dapat menjadi

perantara percakapan

perantara percakapan

antara komputer dan

antara komputer dan

manusia

manusia

z

z

Bahasa pemrograman diubah ke dalam bahasa

Bahasa pemrograman diubah ke dalam bahasa

yang dipahami oleh komputer dengan

yang dipahami oleh komputer dengan

menggunakan

menggunakan

interpreter

interpreter

atau

atau

kompiler

kompiler

8

Compiler or I nterpreter?

Compiler or I nterpreter?

z

z

Compiler:

Compiler:

Mengkompilasi source code

Mengkompilasi source code

menjadi bentuk

menjadi bentuk

file yang bisa

file yang bisa

dieksekusi

dieksekusi

dieksekusi

dieksekusi

z

z

Interpreter:

Interpreter:

Mengkompilasi dan menjalankan

Mengkompilasi dan menjalankan

source code

source code

secara langsung

secara langsung

9

Tingkat Bahasa Pemrograman

Tingkat Bahasa Pemrograman

z

z

Bahasa Pemrograman Tingkat

Bahasa Pemrograman Tingkat

Rendah

Rendah

(Assembler)

(Assembler)

z

z

Bahasa Pemrograman Tingkat

Bahasa Pemrograman Tingkat

Sedang

Sedang

(C Pascal Fortran)

(C Pascal Fortran)

(C, Pascal, Fortran)

(C, Pascal, Fortran)

z

z

Bahasa Pemrograman Tingkat

Bahasa Pemrograman Tingkat

Tinggi

Tinggi

(Java, C++, C#)

(Java, C++, C#)

10

Assembly Language

Assembly Language

00010100 00010100 001100101 001100101 LDA #47

LDA #47 STA $ STA $570570 DEX DEX JSR JSR $817$817 CPX #0 CPX #0 BNE #14 BNE #14 Assembly language program Assembly language program

Translation Translation program program (Assembler) (Assembler)

11

00001000 00001000 100100101 100100101 010101010 010101010 10010 10010

Machine language program Machine language program

(executable file) (executable file)

y g g p g

y g g p g

C Language

C Language

#

#include <include <stdio.hstdio.h>>

main main()() {{

printf(“Hall ”)

printf(“Hall ”) CC CompilerCompiler

0001010000 0001010000 1100101000 1100101000 0100010010 0100010010 01010101010 01010101010 1010010 1010010

12

printf(“Hallo”); printf(“Hallo”); }}

C Program C Program

1010010 1010010

(3)

Java Language

Java Language

javac

javac

(Java Compiler) (Java Compiler)

java

java

(Java Interpreter) (Java Interpreter)

13

Paradigma Pemrograman

Paradigma Pemrograman

Sudut pandang dan style pemrograman

Sudut pandang dan style pemrograman

berhubungan dengan bagaimana sebuah masalah

berhubungan dengan bagaimana sebuah masalah

diformulasikan dalam bahasa pemrograman

diformulasikan dalam bahasa pemrograman

z

z

Functional Programming

Functional Programming

: Urutan fungsi secara

: Urutan fungsi secara

sekuensial

sekuensial

(Scheme Lisp)

(Scheme Lisp)

sekuensial

sekuensial

(Scheme, Lisp)

(Scheme, Lisp)

z

z

Procedural Programming

Procedural Programming

: Pemecahan masalah

: Pemecahan masalah

berdasarkan prosedural kerja yg terkumpul dalam unit

berdasarkan prosedural kerja yg terkumpul dalam unit

pemrograman bernama

pemrograman bernama

fungsi

fungsi

(C, Pascal)

(C, Pascal)

z

z

Object

Object--Oriented Programming

Oriented Programming

: Koleksi object yang

: Koleksi object yang

saling berinteraksi .

saling berinteraksi .

Class

Class

adalah unit pemrograman

adalah unit pemrograman

(Java, C#, C++)

(Java, C#, C++)

14

I nstall, Compile and

I nstall, Compile and

Running Java

Running Java

15

Tool Pemrograman Java

Tool Pemrograman Java

1.

1.

Compiler (Interpreter)

Compiler (Interpreter)

::

Java Standard Edition

Java Standard Edition

(JSE)

(JSE)

2.

2.

Text/Code Editor

Text/Code Editor

::

TextPad

TextPad

, Notepad++

, Notepad++

3.

3.

Integrated Development Environment

Integrated Development Environment

(IDE):

(IDE):

Netbeans, Eclipse, JCreator

Netbeans, Eclipse, JCreator

(*) IDE mengintegrasikan Compiler, Code Editor dan (*) IDE mengintegrasikan Compiler, Code Editor dan Visual (GUI) secara lengkap

Visual (GUI) secara lengkap

16

‰

‰

Java

Java Standard Edition

Standard Edition

((

JJava

ava SE

SE

))

‰

‰ For For desktop, client/server desktop, client/server

application application

‰

‰

Java

Java Enterprise

Enterprise EEdition

dition

Java Family Suite

Java Family Suite

pp

((

JJava

ava EE

EE

))

‰

‰ For eFor e--businessbusiness, e, e--commerce commerce web based application web based application

‰

‰ Java Java Micro EditionMicro Edition

((JJava ava MEME))

‰

‰ For For small devicessmall devices, like , like palm,

palm, handphonehandphone, etc, etc

I nstalasi Java Standard Edition

I nstalasi Java Standard Edition

1.

1.

Download Java Standard Edition dari:

Download Java Standard Edition dari:

http://java.sun.com/javase/downloads/

http://java.sun.com/javase/downloads/

2.

2.

Instal Java Standard Edition dengan mengklik:

Instal Java Standard Edition dengan mengklik:

jdk

jdk--6u6

6u6--windows

windows--i586

i586--p.exe

p.exe

33

Klik

Klik

Start

Start

Æ

Æ

Control Panel

Control Panel

Æ

Æ

System

System

Æ

Æ

3.

3.

Klik

Klik

Start

Start

Æ

Æ

Control Panel

Control Panel

Æ

Æ

System

System

Æ

Æ

Advanced

Advanced

Æ

Æ

Environment Variables

Environment Variables

dan set

dan set

PATH:

PATH:

;;C:

C:\\Program Files

Program Files\\Java

Java\\jdk1.6.0_

jdk1.6.0_06

06\\bin

bin

4.

4.

Instal text editor untuk editing code:

Instal text editor untuk editing code:

textpad, notepad++, JCreator

textpad, notepad++, JCreator

(4)

javac (java javac (java compilercompiler))

Interpreter

Interpreter InterpreterInterpreter InterpreterInterpreter InterpreterInterpreter

Jalankan dengan: Jalankan dengan:

1.

1. C:C:\\>java >java Hello Hello (Application)(Application)

2.

2. Web BrowserWeb Browser (Applet)(Applet)

How Java Works?

How Java Works?

public class Hello public class Hello

public static void main(String[] public static void main(String[] argsargs){){

System.out.println

System.out.println("Hello World!");("Hello World!"); }}

}} Hello.java

Hello.class

Kompiler memproduksi Kompiler memproduksi

Bytecode (Class) Bytecode (Class)

Web Server Web Server Write Once Run Everywhere !

Write Once Run Everywhere !

Compile and Run Java Applet

Compile and Run Java Applet

import

import java.appletjava.applet.*;.*; import java.awt.*; import java.awt.*;

public

public class class HelloWorldHelloWorld extends Applet {extends Applet { public void paint(Graphics g) { public void paint(Graphics g) {

g.drawString

g.drawString("Hello world!",50,25("Hello world!",50,25);); }

} } }

<HTML> <HEAD>

<TITLE>A Simple Program</TITLE> </HEAD>

<BODY>

Here is the output of my program: <APPLET CODE="HelloWorld.class" WIDTH=150 HEIGHT=25>

</APPLET> </BODY> </HTML>

C:

C:\\javac HelloWorld.javajavac HelloWorld.java

C:

C:\\appletviewer Hello.htmlappletviewer Hello.html

Menulis Program

Menulis Program “

“Halo Semarang

Halo Semarang”

public

public class

class H

Hal

alo{

o{

public static void main(String[]

public static void main(String[] args

args){

){

System.out.println

System.out.println(“

(“Halo Semarang

Halo Semarang");

");

}}

}}

21

GUI Version

GUI Version “

“Halo Semarang”

Halo Semarang”

import

import javax.swingjavax.swing.*;.*;

public class

public class HaloGUIHaloGUI{{

public static void main( String[] public static void main( String[] argsargs ){){

JOptionPane.showMessageDialog

JOptionPane.showMessageDialog(null, "Halo Semarang");(null, "Halo Semarang"); }}

22 }}

Menulis Java Program

Menulis Java Program

z

z

PProgram harus punya method di public class:

rogram harus punya method di public class:

public

public static void main(String[]

static void main(String[] args

args))

Æ

Æ

Program Java mulai dari sini

Program Java mulai dari sini!!

z

z

Bentuk program:

Bentuk program:

1.

1. GUI applicationGUI applicationÆÆpublic public class class biasanya biasanya

menggunakan Frame (AWT),

menggunakan Frame (AWT), JframeJframe(Swing)(Swing)

2.

2. “Text “Text based” Console based” Console ApplicationApplicationÆÆpublic public class class

adalah

adalah classclass yang sederhanayang sederhana

Latihan: Tulis dan Compile Halo.java

Latihan: Tulis dan Compile Halo.java

public class Halo{

public class Halo{

public static void main(String[] args)

public static void main(String[] args)

{{

System.out.println(“Halo Semarang”);

System.out.println(“Halo Semarang”);

}}

24

(5)

Konsep Dasar

Konsep Dasar

Pemrograman

Pemrograman

Berorientasi Objek

Berorientasi Objek

25

Berorientasi Objek?

Berorientasi Objek?

Attribute:

Attribute:

Topi, Baju, Tas

Topi, Baju, Tas

Punggung, Jaket,

Punggung, Jaket,

Tangan, Kaki, Mata

Tangan, Kaki, Mata

hh

26

Behavior:

Behavior:

Cara

Cara Jalan ke Depan

Jalan ke Depan

Cara Jalan Mundur

Cara Jalan Mundur

Cara

Cara Belok ke Kiri

Belok ke Kiri

Cara Memanjat

Cara Memanjat

Berorientasi Objek?

Berorientasi Objek?

Attribute (State):

Attribute (State):

Ban, Stir, Pedal Kopling/Gas/Rem, Ban, Stir, Pedal Kopling/Gas/Rem, Warna, Tahun

Warna, Tahun ProduksiProduksi

Behavior:

Behavior:

Cara Menghidupkan Mesin Cara Menghidupkan Mesin Cara Manjalankan Mobil Cara Manjalankan Mobil Cara Memundurkan Mobil Cara Memundurkan Mobil

27

Attribute

Attribute

Æ

Æ

Variable(Member)

Variable(Member)

Behavior

Behavior

Æ

Æ

Method(Fungsi

Method(Fungsi))

Latihan

Latihan

1.

1.

Lakukan kegiatan berorientasi objek dengan

Lakukan kegiatan berorientasi objek dengan

target

target

Sepeda

Sepeda

2.

2.

Pikirkan apa

Pikirkan apa

atribut dan behavior

atribut dan behavior

yang

yang

dimiliki oleh Sepeda tersebut

dimiliki oleh Sepeda tersebut

28

Karakteristik OOP

Karakteristik OOP --1

1--z

z

Abstraction

Abstraction

:Cara kita

:Cara kita melihat suatu sistem

melihat suatu sistem

dalam bentuk yang lebih sederhana

dalam bentuk yang lebih sederhana, yaitu

, yaitu

sebagai suatu kumpulan subsistem (object)

sebagai suatu kumpulan subsistem (object)

yang saling berinteraksi.

yang saling berinteraksi.

z

z Mobil adalah kumpulan sistem pengapian, sistem Mobil adalah kumpulan sistem pengapian, sistem dd pp p g pp g p ,,

kemudi, sistem pengereman kemudi, sistem pengereman

z

z

Modularity

Modularity

: : Sifat object adalah modular.

Sifat object adalah modular. Object

Object

dapat ditulis dan dimaintain terpisah

dapat ditulis dan dimaintain terpisah

(independen)

(independen) dari object lain

dari object lain

(6)

31

Karakteristik OOP

Karakteristik OOP --2

2--z

z

Encapsulation

Encapsulation

: Mekanisme

: Mekanisme menyembunyikan

menyembunyikan

suatu proses dalam sistem

suatu proses dalam sistem untuk menghindari

untuk menghindari

interferensi dan menyederhanakan penggunaan

interferensi dan menyederhanakan penggunaan

sistem itu sendiri

sistem itu sendiri

z

z Tongkat transmisi (gigi) pada mobilTongkat transmisi (gigi) pada mobil

T b l / ff/ t h d AC T b l / ff/ t h d AC

z

z Tombol on/off/pengaturan suhu pada ACTombol on/off/pengaturan suhu pada AC

32

33 34

Karakteristik OOP

Karakteristik OOP --3

3--z

z

Inheritance

Inheritance

: Suatu class dapat

: Suatu class dapat mewariskan

mewariskan

atribut dan method

atribut dan method

kepada class lain (subclass),

kepada class lain (subclass),

serta membentuk class hierarchy

serta membentuk class hierarchy

35

Karakteristik OOP

Karakteristik OOP --4

4--z

z

Polymorphism

Polymorphism

: Suatu

: Suatu object dapat memiliki

object dapat memiliki

berbagai bentuk

berbagai bentuk, sebagai object dari classnya

, sebagai object dari classnya

sendiri atau object dari superclassnya

sendiri atau object dari superclassnya

z

z OverloadingOverloading: Penggunaan : Penggunaan satu nama untuk beberapa satu nama untuk beberapa

method

methodyang berbeda (beda parameter)yang berbeda (beda parameter)

method

methodyang berbeda (beda parameter)yang berbeda (beda parameter)

z

z OverridingOverriding: Terjadi ketika deklarasi method subclass : Terjadi ketika deklarasi method subclass

dengan

dengan nama dan parameter yang sama nama dan parameter yang sama dengan dengan method dari superclassnya

method dari superclassnya

(7)

Class dan Object

Class dan Object --1

1--z

z

Class:

Class:

mobil

mobil

z

z

Object:

Object:

mobilnya pak Joko, mobilku

mobilnya pak Joko, mobilku

z

z

Class seperti

Class seperti

cetakan kue

cetakan kue

, dimana kue yg

, dimana kue yg

dihasilkan dari cetakan kue itu adalah

dihasilkan dari cetakan kue itu adalah

object

object

dihasilkan dari cetakan kue itu adalah

dihasilkan dari cetakan kue itu adalah

object

object

z

z

Warna kue bisa bermacam

Warna kue bisa bermacam--macam meskipun

macam meskipun

berasal dari cetakan yang sama (

berasal dari cetakan yang sama (

object memiliki

object memiliki

sifat independen

sifat independen

))

z

z

Object adalah

Object adalah

instance dari Class

instance dari Class

37

Class and Object

Class and Object --2

2--Class =

Class = method+

method+variable

variable

The

The

Bicycle

Bicycle

class

class

Class dan Object

Class dan Object --3

3--39

Bicycle

Bicycle dimodelkan

dimodelkan

sebagai sebuah

sebagai sebuah object

object::

z

z 10 mph, 90 rpm, 510 mph, 90 rpm, 5ththgear adalah gear adalah instance variableinstance variable z

z changegearschangegears, brake, , brake, changecadencechangecadence adalahadalahinstance instance methodmethod

Attribute

Attribute

A

Attribute

ttribute

adalah berbagai variable yang

adalah berbagai variable yang

mengitari class, dengan nilai datanya bisa

mengitari class, dengan nilai datanya bisa

ditentukan di object.

ditentukan di object. Name

Name, age,

, age, dan

dan weight

weight

adalah atribute dari class Person

adalah atribute dari class Person

Membuat Class, Object dan Memanggil Atribut

Membuat Class, Object dan Memanggil Atribut

class Mobil { class Mobil {

String warna; String warna; int tahunProduksi; int tahunProduksi; }}

public class MobilBeraksi{ public class MobilBeraksi{

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

// Membuat object // Membuat object

Mobil.java Mobil.java

MobilBeraksi.java MobilBeraksi.java

41

// Membuat object // Membuat object

Mobil mobilku = new Mobil(); Mobil mobilku = new Mobil();

/* memanggil atribut dan memberi nilai */ /* memanggil atribut dan memberi nilai */

mobilku.warna = "Hitam"; mobilku.warna = "Hitam"; mobilku.tahunProduksi = 2006; mobilku.tahunProduksi = 2006; System.out.println("Warna: " +

System.out.println("Warna: " + mobilku.warnamobilku.warna);); System.out.println("Tahun: " +

System.out.println("Tahun: " + mobilku.tahunProduksi)mobilku.tahunProduksi);; }}

}}

Method

Method

z

z

M

Method

ethod adalah

adalah

implementasi dari

implementasi dari

bagaimana bekerjanya sebuah class

bagaimana bekerjanya sebuah class

M th d l k k

M th d l k k

z

z

Method melakukan:

Method melakukan:

1.

1.

Manipulasi data

Manipulasi data

2.

2.

Perhitungan

Perhitungan

matematika

matematika

3.
(8)

Membuat dan Memanggil Method

Membuat dan Memanggil Method

class Mobil2{ class Mobil2{ String warna; String warna; int tahunProduksi; int tahunProduksi; void

void printMobil()printMobil(){{

System.out.println("Warna: " + warna); System.out.println("Warna: " + warna); System.out.println("Tahun: " + tahunProduksi); System.out.println("Tahun: " + tahunProduksi); }}

}}

bl l b l k

bl l b l k

Mobil2.java Mobil2.java

43

public class Mobil2Beraksi{ public class Mobil2Beraksi{

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

// Membuat object // Membuat object

Mobil2 mobilku = new Mobil2(); Mobil2 mobilku = new Mobil2();

/* memanggil atribut dan memberi nilai */ /* memanggil atribut dan memberi nilai */

mobilku.warna = "Hitam"; mobilku.warna = "Hitam"; mobilku.tahunProduksi = 2006; mobilku.tahunProduksi = 2006;

mobilku.printMobil(); mobilku.printMobil();

}} }}

Mobil2Beraksi.java Mobil2Beraksi.java

Latihan

Latihan

z

z

Kembangkan Class

Kembangkan Class

Mobil2

Mobil2

z

z

Ubah nama classs menjadi

Ubah nama classs menjadi

MobilLengkap

MobilLengkap

dan

dan

masukkan method:

masukkan method:

z

z hidupkanMobil()hidupkanMobil()

z

z matikanM bil()matikanM bil() z

z matikanMobil()matikanMobil()

z

z ubahGigi()ubahGigi()

z

z

Isi masing

Isi masing--masing method dengan tampilan

masing method dengan tampilan

status menggunakan

status menggunakan

System.out.println()

System.out.println()

z

z

Panggil method

Panggil method--method diatas dari

method diatas dari

MobilLengkapBeraksi

MobilLengkapBeraksi

44

Message

Message dan Parameter

dan Parameter --1

1--z

z Bicycle akan berguna apabila ada object lain Bicycle akan berguna apabila ada object lain ((misalnya andamisalnya anda) )

yang berinterasi dengan Bicycle tersebut yang berinterasi dengan Bicycle tersebut

z

z Object software berinteraksi dan berkomunikasi dengan Object software berinteraksi dan berkomunikasi dengan

object lain dengan cara mengirimkan

object lain dengan cara mengirimkan messagemessage. Informasi . Informasi dalam message ini dikenal dengan nama

dalam message ini dikenal dengan nama ParameterParameter

45

Message

Message dan Parameter

dan Parameter --2

2--46

1.

1. YouYouÆÆobject pengirim (object pengirim (sendersender)) 2.

2. YourBicycleYourBicycleÆÆobject penerima (receiver)object penerima (receiver) 3.

3. cchangeGearshangeGearsÆÆthe message, the method to performthe message, the method to perform 4.

4. lowerGearlowerGearÆÆinformation from You to information from You to YourBicycleYourBicycle, the , the

parameters

parametersneeded by the methodneeded by the method

47

Membuat Class ( Sepeda.java)

Membuat Class ( Sepeda.java)

class Sepeda{ class Sepeda{

int kecepatan = 0; int kecepatan = 0; int gir = 0; int gir = 0; // method // method

void ubahGir(

void ubahGir(int pertambahanGirint pertambahanGir)){{ gir= gir+ pertambahanGir gir= gir+ pertambahanGir gir= gir+ pertambahanGir; gir= gir+ pertambahanGir; System.out.println(" Gir:" + gir); System.out.println(" Gir:" + gir); }}

void tambahKecepatan(

void tambahKecepatan(int pertambahanKecepatanint pertambahanKecepatan) ) {{ kecepatan = kecepatan+ pertambahanKecepatan; kecepatan = kecepatan+ pertambahanKecepatan; System.out.println(" Kecepatan:" + kecepatan); System.out.println(" Kecepatan:" + kecepatan); }}

}}

(9)

Membuat dan Memanggil Object

Membuat dan Memanggil Object

( SepedaBeraksi.java)

( SepedaBeraksi.java)

public class SepedaBeraksi{ public class SepedaBeraksi{

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

// Membuat object // Membuat object

Sepeda sepedaku = new Sepeda(); Sepeda sepedaku = new Sepeda();

// ggil t ib t d b i il i // ggil t ib t d b i il i //memanggil atribut dan memberi nilai //memanggil atribut dan memberi nilai

sepedaku.kecepatan=10; sepedaku.kecepatan=10; sepedaku.gir=2; sepedaku.gir=2;

// Memanggil method dan menunjuk nilai parameter // Memanggil method dan menunjuk nilai parameter

sepedaku.tambahKecepatan(30); sepedaku.tambahKecepatan(30); sepedaku.ubahGir(3);

sepedaku.ubahGir(3);

}} }}

49

Latihan

Latihan

z

z

Buat Class bernama

Buat Class bernama

Matematika

Matematika

, yang berisi

, yang berisi

method dengan

method dengan

dua parameter

dua parameter

::

z

z pertambahanpertambahan z

z penguranganpengurangan z

z perkalianperkalian z

z pembagianpembagianpp gg

z

z

Buat Class bernama

Buat Class bernama

MatematikaBeraksi

MatematikaBeraksi

, yang

, yang

mengeksekusi method dan menampilkan:

mengeksekusi method dan menampilkan:

z

z Pertambahan: 20 + 20 = 40Pertambahan: 20 + 20 = 40 z

z Pengurangan: 10Pengurangan: 10--5 = 55 = 5 z

z Perkalian: 10x20 = 200Perkalian: 10x20 = 200 z

z Pembagian: 21/2 = 10.5 (float or double)Pembagian: 21/2 = 10.5 (float or double)

50

Tips Membuat C

Tips Membuat Class

lass

z

z

1 file

1 file bisa berisi

bisa berisi

>=1

>=1

class

class

z

z

1 file

1 file hanya dapat berisi 1 public class

hanya dapat berisi 1 public class

z

z

Nama file harus sama dengan nama

Nama file harus sama dengan nama

public

public class

class

sifatnya adalah c

sifatnya adalah case

ase sensitive

sensitive

51

public

public class

class

sifatnya adalah c

sifatnya adalah case

ase sensitive

sensitive

z

z

Tips:

Tips: Lebih baik dan lebih mudah

Lebih baik dan lebih mudah

dipahami apabila

dipahami apabila

satu file berisi hanya

satu file berisi hanya

satu class

satu class

Kata Kunci this

Kata Kunci this

Digunakan pada pembuatan class dan digunakan

Digunakan pada pembuatan class dan digunakan

untuk

untuk

menyatakan object sekarang

menyatakan object sekarang

class Mobil{ class Mobil{

String warna; String warna; Int tahunProduksi; Int tahunProduksi;

class Mobil{ class Mobil{

String warna; String warna; Int tahunProduksi; Int tahunProduksi;

52

vvoid isiData(Stringoid isiData(String warnaMobil, int warnaMobil, int tahunProduksiMobil){ tahunProduksiMobil){

warna = warnaMobil; warna = warnaMobil;

tahunProduksi = tahunProduksiMobil; tahunProduksi = tahunProduksiMobil; }}

vvoid isiData(Stringoid isiData(String warna, int warna, int tahunProduksi){ tahunProduksi){

this.warna = warna; this.warna = warna;

this.tahunProduksi = tahunProduksi; this.tahunProduksi = tahunProduksi;

}}

Konstruktor

Konstruktor --1

1--z

z

Method yang digunakan untuk memberi

Method yang digunakan untuk memberi

nilai awal

nilai awal

pada saat object diciptakan

pada saat object diciptakan

z

z

Dipanggil secara otomatis ketika

Dipanggil secara otomatis ketika

new

new

digunakan untuk membuat instan class

digunakan untuk membuat instan class

gg

z

z

Sifat konstruktor:

Sifat konstruktor:

z

z

Nama konstruktor

Nama konstruktor

sama dengan nama class

sama dengan nama class

z

z

Tidak memiliki nilai balik

Tidak memiliki nilai balik

dan tidak boleh ada

dan tidak boleh ada

kata kunci void

kata kunci void

53

Konstruktor

Konstruktor --2

2--class Mobil { class Mobil {

String warna; String warna; int tahunProduksi; int tahunProduksi;

public Mobil(String warna, int tahunProduksi){ public Mobil(String warna, int tahunProduksi){

this.warna = warna; this.warna = warna;

this.tahunProduksi = tahunProduksi; this.tahunProduksi = tahunProduksi; }}

public void info(){ public void info(){

System.out.println("Warna: " + this.warna); System.out.println("Warna: " + this.warna); System.out.println("Tahun: " + this.tahunProduksi); System.out.println("Tahun: " + this.tahunProduksi); }}

}}

public class MobilKonstruktor{ public class MobilKonstruktor{

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

Mobil mobilku = new Mobil(“Merah”, 2003); Mobil mobilku = new Mobil(“Merah”, 2003); mobilku.info();

mobilku.info(); }}

}}

(10)

Class Access Level

Class Access Level

Specifier

Specifier

Class

Class

Package

Package SubClass

SubClass World

World

private

private

9

9

55

no specifier

no specifier

9

9

9

9

protected

protected

9

9

9

9

9

9

public

public

9

9

9

9

9

9

9

9

Latihan

Latihan

1.

1.

Buat class

Buat class

Buku

Buku

2.

2.

Tentukan variable buku:

Tentukan variable buku:

Judul, Pengarang, Penerbit

Judul, Pengarang, Penerbit

dan Tahun

dan Tahun

3.

3.

Buat konstruktor class Buku dengan parameter:

Buat konstruktor class Buku dengan parameter:

Judul, Pengarang, Penerbit dan Tahun

Judul, Pengarang, Penerbit dan Tahun

B

h d

B

h d

kB k

kB k

4.

4.

Buat method

Buat method

cetakBuku

cetakBuku

5.

5.

Buat class

Buat class

BukuBeraksi

BukuBeraksi

dan tampilkan 2 buku:

dan tampilkan 2 buku:

z

z Pemrograman Berbasis Objek dengan Java, Indrajani, Pemrograman Berbasis Objek dengan Java, Indrajani,

Elexmedia Komputindo, 2007 Elexmedia Komputindo, 2007

z

z Dasar Pemrograman Java, Abdul Kadir, Andi Offset, Dasar Pemrograman Java, Abdul Kadir, Andi Offset,

2006 2006

56

I nheritance ( Pew arisan)

I nheritance ( Pew arisan)

z

z

Reusability

Reusability

z

z

Top down:

Top down:

z

z Being more Being more specificspecific

z

z

Bottom Up:

Bottom Up:

z

z Find Find similiaritysimiliarity

57

ind ind imi ia ityimi ia ity z

z

Java Keyword:

Java Keyword:

extends

extends

Sepeda.java

Sepeda.java

class Sepeda{ class Sepeda{

int kecepatan = 0; int kecepatan = 0; int gir = 0; int gir = 0; // method // method

void ubahGir(int pertambahanGir) void ubahGir(int pertambahanGir){{

gir= gir+ pertambahanGir gir= gir+ pertambahanGir gir= gir+ pertambahanGir; gir= gir+ pertambahanGir; System.out.println("Gir:" + gir); System.out.println("Gir:" + gir); }}

void tambahKecepatan(int pertambahanKecepatan) void tambahKecepatan(int pertambahanKecepatan) {{

kecepatan = kecepatan+ pertambahanKecepatan; kecepatan = kecepatan+ pertambahanKecepatan; System.out.println("Kecepatan:" + kecepatan); System.out.println("Kecepatan:" + kecepatan); }}

}}

58

Class SepedaGunung Mew arisi Class Sepeda

Class SepedaGunung Mew arisi Class Sepeda

class

class SepedaGunung SepedaGunung extendsextendsSepeda Sepeda { {

int setSadel; int setSadel;

public void s

public void setSadeletSadel((intint nilaiSadelnilaiSadel) { ) { setSadel =

setSadel = nilaiSadelnilaiSadel; ; System.out.println(“Tinggi System.out.println(“Tinggi Sadel:”+setSadel); Sadel:”+setSadel); }

}

class SepedaGunungBeraksi { class SepedaGunungBeraksi {

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

// Membuat object // Membuat object

SepedaGunung sepedaku = new sepedaGunung(); SepedaGunung sepedaku = new sepedaGunung();

// Memanggil method di object // Memanggil method di object

sepedaku.tambahKecepatan(10); sepedaku.tambahKecepatan(10); sepedaku.ubahGir(2); sepedaku.ubahGir(2);

ll }

}

} }

59

sepedaku.setSadel(20); sepedaku.setSadel(20);

}} }}

SepedaGunung.java

SepedaGunung.java SepedaGunungBeraksi.javaSepedaGunungBeraksi.java

Latihan

Latihan

z

z

Buat class

Buat class

MobilBMW

MobilBMW

yang merupakan inherit

yang merupakan inherit

dari class

dari class

MobilLengkap

MobilLengkap

z

z

Tambahkan method

Tambahkan method

nontonTV()

nontonTV()

yang

yang

menampilkan tulisan di layar:

menampilkan tulisan di layar:

z

z TV dihidupkanTV dihidupkan z

z TV dihidupkanTV dihidupkan

z

z TV mencari channelTV mencari channel

z

z TV menampilkan gambarTV menampilkan gambar

z

z

Buat class

Buat class

MobilBMWBeraksi

MobilBMWBeraksi

yang memanggil

yang memanggil

method

method

nontonTV, hidupkanMobil,

nontonTV, hidupkanMobil,

matikanMobil, ubahGigi

matikanMobil, ubahGigi

(11)

Konsep Lanjut

Konsep Lanjut

Pemrograman

Pemrograman

Berorientasi

Berorientasi Ob

Objjek

ek

61

Polymorphism

Polymorphism

z

z

Polymorphism

Polymorphism

: Suatu object dapat

: Suatu object dapat

memiliki berbagai bentuk, sebagai

memiliki berbagai bentuk, sebagai

object dari classnya sendiri atau object

object dari classnya sendiri atau object

dari superclassnya

dari superclassnya

ll

62 1.

1.

Overloading

Overloading

: Penggunaan

: Penggunaan

satu nama untuk

satu nama untuk

beberapa method yang berbeda parameter

beberapa method yang berbeda parameter

2.

2.

Overriding

Overriding

: Terjadi ketika

: Terjadi ketika

deklarasi method

deklarasi method

subclass sama dengan method dari

subclass sama dengan method dari

superclassnya

superclassnya

Polymorphism

Polymorphism –

– Overloading

Overloading

class Mobil { class Mobil {

String warna; String warna; int tahunProduksi; int tahunProduksi;

public Mobil(String warna, int public Mobil(String warna, int tahunProduksi){ tahunProduksi){

this.warna = warna; this.warna = warna;

this.tahunProduksi = tahunProduksi; this.tahunProduksi = tahunProduksi; }}

public class MobilKonstruktor{ public class MobilKonstruktor{

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

Mobil mobilku = new Mobil(“Merah”, Mobil mobilku = new Mobil(“Merah”, 2003);

2003);

mobilku.info(); mobilku.info();

Mobil mobil

Mobil mobilmumu = new Mobil();= new Mobil();

mobil mobilmu.mu.info();info(); }} public Mobil(){ public Mobil(){ }} void info(){ void info(){

System.out.println("Warna: " + System.out.println("Warna: " + this.warna);

this.warna);

System.out.println("Tahun: " + System.out.println("Tahun: " + this.tahunProduksi); this.tahunProduksi); }} }} 63 }} }}

Contoh Lain Overloading

Contoh Lain Overloading

class Lingkaran{

class Lingkaran{

public

public

buatLingkaran(int diameter)

buatLingkaran(int diameter)

{{

...

...

}}

public

public

buatLingkaran(int diameter, int x, int y)

buatLingkaran(int diameter, int x, int y)

{{

...

...

}}

public

public

buatLingkaran(int diameter, int x, int y, int

buatLingkaran(int diameter, int x, int y, int

warna, String namaLingkaran)

warna, String namaLingkaran)

{{

...

...

}}

}}

64

Polymorphism

Polymorphism -- Overriding

Overriding

class Sepeda{ class Sepeda{

int kecepatan = 0; int kecepatan = 0; int gir = 0; int gir = 0; // method // method

void ubahGir(int pertambahanGir) void ubahGir(int pertambahanGir){{

gir= gir+ pertambahanGir gir= gir+ pertambahanGir gir= gir+ pertambahanGir; gir= gir+ pertambahanGir; System.out.println("Gir:" + gir); System.out.println("Gir:" + gir); }}

void tambahKecepatan(int pertambahanKecepatan) void tambahKecepatan(int pertambahanKecepatan) {{

kecepatan = kecepatan+ pertambahanKecepatan; kecepatan = kecepatan+ pertambahanKecepatan; System.out.println("Kecepatan:" + kecepatan); System.out.println("Kecepatan:" + kecepatan); }}

}}

65

Class SepedaGunung Mew arisi Class Sepeda

Class SepedaGunung Mew arisi Class Sepeda

class

class SepedaGunung SepedaGunung extendsextendsSepeda Sepeda { {

int setSadel; int setSadel;

void ubahGir(int pertambahanGir) void ubahGir(int pertambahanGir)

{{

gir= 2*(gir+ pertambahanGir ); gir= 2*(gir+ pertambahanGir ); System.out.println("Gir:" + gir); System.out.println("Gir:" + gir); }}

class SepedaGunungBeraksi { class SepedaGunungBeraksi {

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

// Membuat object // Membuat object

SepedaGunung sepedaku = new sepedaGunung(); SepedaGunung sepedaku = new sepedaGunung();

// Memanggil method di object // Memanggil method di object

sepedaku.tambahKecepatan(10); sepedaku.tambahKecepatan(10); sepedaku.ubahGir(2); sepedaku.ubahGir(2); ll }} } } 66 sepedaku.setSadel(20); sepedaku.setSadel(20); }} }} SepedaGunung.java

(12)

Latihan

Latihan

1.

1.

Kembangkan class

Kembangkan class

Matematika

Matematika

dan

dan

MatematikaBeraksi

MatematikaBeraksi

2.

2.

Lakukan

Lakukan

overloading pada Method

overloading pada Method

yang ada

yang ada

(pertambahan, pengurangan, perkalian,

(pertambahan, pengurangan, perkalian,

pembagian) . Method baru adalah bertipe data

pembagian) . Method baru adalah bertipe data

p

g

p

p

g

p

double

double

(pecahan) dan

(pecahan) dan

memiliki 3 parameter

memiliki 3 parameter

3.

3.

Uji di kelas

Uji di kelas

MatematikaBeraksi

MatematikaBeraksi

dengan

dengan

parameter pecahan: 12.5, 28.7, 14.2

parameter pecahan: 12.5, 28.7, 14.2

4.

4.

Misalnya:

Misalnya:

pertambahan(12.5, 28.7, 14.2)

pertambahan(12.5, 28.7, 14.2)

67

Matematika.java

Matematika.java

class Matematika{ class Matematika{

int hasilPertambahan1, hasilPertambahan2; int hasilPertambahan1, hasilPertambahan2; public void

public void pertambahan (int a, int b)pertambahan (int a, int b){{ hasilPertambahan1 = a + b; hasilPertambahan1 = a + b;

System.out.println(“hasil:” + hasilPertambahan1); System.out.println(“hasil:” + hasilPertambahan1); System.out.println( hasil: hasilPertambahan1); System.out.println( hasil: hasilPertambahan1); }}

public void

public void pertambahan (double a, double b, double c)pertambahan (double a, double b, double c){{ hasilPertambahan2 = a + b + c;

hasilPertambahan2 = a + b + c;

System.out.println(“hasil:” + hasilPertambahan2); System.out.println(“hasil:” + hasilPertambahan2); }}

... ... }}

68

Latihan

Latihan

1.

1.

Kembangkan class

Kembangkan class

Buku

Buku

dan

dan

BukuBeraksi

BukuBeraksi

2.

2.

Selain konstruktor class Buku dengan

Selain konstruktor class Buku dengan

parameter:

parameter:

Judul, Pengarang, Penerbit dan

Judul, Pengarang, Penerbit dan

Tahun,

Tahun,

buat konstruktor lagi dengan

buat konstruktor lagi dengan

ll

parameter

parameter

: Judul

: Judul

dan

dan

Pengarang

Pengarang

saja

saja

3.

3.

Panggil kedua konstruktor class

Panggil kedua konstruktor class

Buku

Buku

tadi

tadi

dari class

dari class

BukuBeraksi

BukuBeraksi

69

Packages

Packages

z

z

PPackage

ackage adalah

adalah

koleksi dari beberapa class

koleksi dari beberapa class

dan interface yang berhubungan, dan

dan interface yang berhubungan, dan

menyediakan proteksi akses dan pengelolaan

menyediakan proteksi akses dan pengelolaan

namespace

namespace

z

z

1 package

1 package adalah

adalah 1

1 subfolder

subfolder di

di file

file system

system

70 z

z

1 package

1 package adalah

adalah 1

1 subfolder

subfolder di

di file

file system

system

z

z

Package sangat berguna untuk

Package sangat berguna untuk

mengorganisir file dalam suatu project atau

mengorganisir file dalam suatu project atau

library

library

z

z

Nama package menggunakan lowercase

Nama package menggunakan lowercase

z

z

Keyword

Keyword: :

package name;

package name;

Budi.java

Budi.java

package kelasku;

package kelasku;

public

public

class Budi{

class Budi{

p bli id

i f (){

p bli id

i f (){

public void info(){

public void info(){

System.out.println(“Kelas Budi”);

System.out.println(“Kelas Budi”);

}}

}}

71

Joko.java

Joko.java

package kelasku;

package kelasku;

public

public

class Joko{

class Joko{

p bli id

i f (){

p bli id

i f (){

public void info(){

public void info(){

System.out.println(“Kelas Joko”);

System.out.println(“Kelas Joko”);

}}

}}

(13)

PaketBeraksi.java

PaketBeraksi.java

import kelasku.Budi;

import kelasku.Budi;

import kelasku.Joko;

import kelasku.Joko;

public class PaketBeraksi{

public class PaketBeraksi{

public static void main(String[] args){

public static void main(String[] args){

Budi objectBudi = new Budi();

Budi objectBudi = new Budi();

objectBudi.info();

objectBudi.info();

Joko objectJoko = new Joko();

Joko objectJoko = new Joko();

objectJoko.info();

objectJoko.info();

}}

}}

73

Latihan

Latihan

z

z

Kembangkan class

Kembangkan class

Budi

Budi

dan

dan

Joko

Joko

z

z

Buat method

Buat method

matakuliah()

matakuliah()

menampilkan

menampilkan

mata kuliah yang diajar Budi dan Joko

mata kuliah yang diajar Budi dan Joko

z

z

Paketkan kedua class tadi dalam satu Package

Paketkan kedua class tadi dalam satu Package

bernama

bernama

dosen

dosen

(gunakan keyword:

(gunakan keyword:

package

package

))

bernama

bernama

dosen

dosen

(gunakan keyword:

(gunakan keyword:

package

package

))

z

z

Buat Class

Buat Class

DosenBeraksi

DosenBeraksi

yang menjalankan

yang menjalankan

method yang ada di kedua Class tadi

method yang ada di kedua Class tadi

(gunakan keyword:

(gunakan keyword:

import

import

))

74

I nterface

I nterface

z

z

Interface digunakan apabila kita ingin

Interface digunakan apabila kita ingin

menentukan apa yang harus dilakukan

menentukan apa yang harus dilakukan

oleh suatu class tapi

oleh suatu class tapi

tidak menentukan

tidak menentukan

bagaimana cara untuk melakukannya

bagaimana cara untuk melakukannya

75

bagaimana cara untuk melakukannya

bagaimana cara untuk melakukannya

z

z

Interface sebenarnya sama dengan class,

Interface sebenarnya sama dengan class,

tapi hanya memiliki

tapi hanya memiliki

deklarasi method

deklarasi method

tanpa implementasi

tanpa implementasi

interface

interface

IntLampu

IntLampu{{

public

public

static final

static final

int

int KeadaanHidup

KeadaanHidup=1;

=1;

public

public

static final

static final

int

int KeadaanMati

KeadaanMati=0;

=0;

bli

bli

b t

b t

t

t

id

id hid k

hid k ()

()

I nterfaceBeraksi.java

I nterfaceBeraksi.java

76

public

public

abstract

abstract

void

void hidupkan

hidupkan();

();

public

public

abstract

abstract

void

void matikan

matikan();

();

}}

class

class LampuLampuimplementsimplementsIntLampuIntLampu{{ int

int statusLampustatusLampu=0;=0;

ppublicublic void void hidupkanhidupkan(){(){ if (

if (this.statusLamputhis.statusLampu == == KeadaanMatiKeadaanMati){){ this.statusLampu

this.statusLampu = = KeadaanHidupKeadaanHidup;; System.out.println

System.out.println("("HidupkanHidupkan LampuLampu! ! ----> > LampuLampu HidupHidup");"); }else{

}else{

System.out.println

System.out.println("("HidupkanHidupkan LampuLampu! ! ----> > LampuLampu SudahSudah HidupHidup Kok

Kok");}");}

77 Kok

Kok );});} }}

public void

public void matikanmatikan(){(){ if (

if (this.statusLamputhis.statusLampu == == KeadaanHidupKeadaanHidup){){ this.statusLampu

this.statusLampu = = KeadaanMatiKeadaanMati;; System.out.println

System.out.println("("MatikanMatikan LampuLampu! ! ----> > LampuLampu MatiMati");"); }else{

}else{

System.out.println

System.out.println("("MatikanMatikan LampuLampu! ! ----> > LampuLampu SudahSudah MatiMati KokKok");"); }}}

}}}

public class

public class InterfaceBeraksi

InterfaceBeraksi{{

public static void main(String[]

public static void main(String[] args

args){

){

Lampu

Lampu lampuKamar

lampuKamar = new

= new Lampu

Lampu();

();

System.out.println

System.out.println("Status

("Status Lampu

Lampu Saat

Saat Ini

Ini: : Mati

Mati");

");

78

lampuKamar.hidupkan

lampuKamar.hidupkan(); //

(); //Hidupkan

Hidupkan Lampu

Lampu

lampuKamar.matikan

lampuKamar.matikan(); //

(); //Matikan

Matikan Lampu

Lampu

lampuKamar.matikan

lampuKamar.matikan(); //

(); //Matikan

Matikan Lampu

Lampu

lampuKamar.hidupkan

lampuKamar.hidupkan(); //

(); //Hidupkan

Hidupkan Lampu

Lampu

lampuKamar.hidupkan

lampuKamar.hidupkan(); //

(); //Hidupkan

Hidupkan Lampu

Lampu

}}

(14)

Latihan

Latihan

z

z

Buat program serupa dengan

Buat program serupa dengan

InterfaceBeraksi.java tapi untuk

InterfaceBeraksi.java tapi untuk

ACBeraksi.java

ACBeraksi.java

M

kk

th d

M

kk

th d

th d di b

th d di b

h k

h k

z

z

Masukkan method

Masukkan method--method di bawah ke

method di bawah ke

dalam

dalam

ACBeraksi.java

ACBeraksi.java

z

z

matikanAC() dan hidupkanAC()

matikanAC() dan hidupkanAC()

z

z

dinginkanAC() dan panaskanAC ()

dinginkanAC() dan panaskanAC ()

79

Tugas Mandiri

Tugas Mandiri

z

z

Buat situs blog

Buat situs blog

, bisa ditempat gratis semacam

, bisa ditempat gratis semacam

wordpress.com atau blogspot.com, atau hosting

wordpress.com atau blogspot.com, atau hosting

secara profesional

secara profesional

z

z

Pilih satu topik tentang konsep OOP

Pilih satu topik tentang konsep OOP

, jelaskan

, jelaskan

d

b h

d (b h

) d

d

b h

d (b h

) d

dengan bahasa sendiri (bahasa manusia) dan

dengan bahasa sendiri (bahasa manusia) dan

sampaikan code yang orisinal (tidak mengambil

sampaikan code yang orisinal (tidak mengambil

dari tempat lain)

dari tempat lain)

z

z

Daftar di university.romisatriawahono.net

Daftar di university.romisatriawahono.net

, ,

upload url blog yang telah dibuat melalui fitur

upload url blog yang telah dibuat melalui fitur

tugas mandiri

tugas mandiri

80

Java API untuk Referensi

Java API untuk Referensi

Pemrograman

Pemrograman

81

Referensi

Referensi --1

1--z

z

Sharon Zakhour et al,

Sharon Zakhour et al,

The Java Tutorial

The Java Tutorial

Fourth Edition

Fourth Edition

, ,

http://java.sun.com/docs/books/tutorial

http://java.sun.com/docs/books/tutorial

z

z

Deitel & Deitel,

Deitel & Deitel,

Java How to Program

Java How to Program Sixth

Sixth

Edition

Edition

Prentice Hall 2004

Prentice Hall 2004

Edition

Edition

, Prentice Hall, 2004

, Prentice Hall, 2004

z

z

Kathy Sierra & Bert Bates,

Kathy Sierra & Bert Bates,

Head First Java

Head First Java

2nd Edition

2nd Edition

, O’Reilly, 2005

, O’Reilly, 2005

z

z

Rogers Cadenhead & Laura Lemay,

Rogers Cadenhead & Laura Lemay,

Teach

Teach

Yourself Java 6 in 21 Days

Yourself Java 6 in 21 Days

, Sams Publishing,

, Sams Publishing,

2007

2007

(15)

Referensi

Referensi --2

2--z

z

Tim Pengembang JENI,

Tim Pengembang JENI,

JENI 1

JENI 1--66

, ,

Depdiknas, 2007

Depdiknas, 2007

z

z

Abdul Kadir,

Abdul Kadir,

Dasar Pemrograman Java 2

Dasar Pemrograman Java 2

, ,

Penerbit Andi, 2004

Penerbit Andi, 2004

Indrajani dan Martin

Indrajani dan Martin

P mr graman B rbasis

P mr graman B rbasis

z

z

Indrajani dan Martin,

Indrajani dan Martin,

Pemrograman Berbasis

Pemrograman Berbasis

Objek dengan Java

Objek dengan Java

, Elex Media Komputindo,

, Elex Media Komputindo,

2007

2007

Referensi

Dokumen terkait

Selanjutnya peneliti merancang RPP yang mengacu pada format dari Permendikbud 103 dimana di dalam RPP tersebut digunakan model Discovery Learning yang terdiri dari (

Pendidikan Kecakapan Hidup (PKH) bagi Lembaga Kursus dan Pelatihan dan satuan pendidikan lainnya adalah program yang diselenggarakan oleh Lembaga Kursus dan Pelatihan maupun

Untuk itu, pada tahun 2018 ini Direktorat Jenderal Anak Usia Dini dan Pendidikan Masyarakat melalui Direktorat Pembinaan Kursus dan Pelatihan menyelenggarakan program

SIG yang digunakan pada perangkat mobile yang menggunakan Platform Android diharapkan dapat mempermudah wisatawan yang berkunjung ke Bali Selatan khususnya untuk

Insidensi neoplasma tulang bila dibandingkan dengan neoplasma jaringan lain adalah jarang, akan tetapi osteosarkoma merupakan tumor ganas primer tulang yang paling sering

RANCANG BANGUN APLIKASI PELAYANAN CUSTOMER PADA SENGKALING FOOD

Pengaruh Motivasi Kerja Terhadap Kinerja Karyawan Serta Dampaknya Pada Kualitas Pelayanan Housekeeping Department Di Padma Hotel Bandung.. Universitas Pendidikan Indonesia