1.3 konsep dasar pemrograman berorientasi...

37
1 Class , Object, Method, Attribute 1.3 Konsep Dasar Pemrograman Berorientasi Objek

Upload: votuong

Post on 28-Apr-2019

262 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

1

Class , Object, Method, Attribute

1.3 Konsep Dasar Pemrograman Berorientasi Objek

Page 2: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

2

Berorientasi Objek?

Attribute:Topi, Baju, Jaket, Tas Punggung, Tangan, Kaki, Mata

Behavior:Cara Jalan ke DepanCara Jalan MundurCara Belok ke KiriCara Memanjat

Page 3: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

3

Berorientasi Objek?Attribute (State):Ban, Stir, Pedal Rem, Pedal Gas,Warna, Tahun Produksi

Behavior:Cara Menghidupkan MesinCara Manjalankan MobilCara Memundurkan Mobil

Attribute → Variable(Member)Behavior → Method(Fungsi)

Page 4: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

4

Perbedaan Class dan Object

▪ Class: konsep dan deskripsi dari sesuatu

• Class mendeklarasikan method yang dapat digunakan (dipanggil) oleh object

▪ Object: instance dari class, bentuk (contoh) nyata dari class

• Object memiliki sifat independen dan dapat digunakan untuk memanggil method

▪ Contoh Class dan Object:

• Class: mobil

• Object: mobilnya pak Joko, mobilku, mobil berwarna merah

Page 5: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

5

Perbedaan Class dan Object

▪ Class seperti cetakan kue, dimana kue yg dihasilkan dari cetakan kue itu adalah object

▪ Warna kue bisa bermacam-macam meskipun berasal dari cetakan yang sama (object memiliki sifat independen)

Page 6: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

6

Class = Method + Variable

variablekecepatan

gir

tampilkan kecepatan

ubah gir method

Class Sepeda

6

Page 7: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

7

Object = Method + Variable yg Memiliki Nilai

instance variablekecepatan = 10km/jam

gir = 3

tampilkan kecepatan ()kecepatan = 10 km/jam

ubah gir (2)gir = 5

instance method

Object Sepedaku

7

Page 8: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

8

Attribute

▪ Variable yang mengitari class, dengan nilai datanya bisa ditentukan di object

▪ Variable digunakan untuk menyimpan nilai yang nantinya akan digunakan pada program

▪ Variable memiliki jenis (tipe), nama dan nilai

▪ Name, age, dan weight adalah atribute (variabel) dari class Person

Page 9: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

9

Membuat Class, Object dan Memanggil Atributpublic class Mobil {

String warna;

int tahunProduksi;

}

public class MobilBeraksi{

public static void main(String[] args){

// Membuat object

Mobil mobilku = new Mobil();

/* memanggil atribut dan memberi nilai */

mobilku.warna = "Hitam";

mobilku.tahunProduksi = 2006;

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

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

}

}

Mobil.java

MobilBeraksi.java

Page 10: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

10

Latihan: Membuat Program dg Netbeans

1. Buka Netbeans IDE

2. Ikuti langkah berikut

Page 11: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

11

Page 12: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

12

Page 13: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

13

Page 14: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

14

Page 15: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

15

Page 16: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

16

Page 17: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

17

Page 18: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

18

Page 19: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

19

Page 20: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

20

Method

▪ Method adalah urutan instruksi yang mengakses data dari object

▪ Method melakukan:1. Manipulasi data2. Perhitungan matematika3. Memonitor kejadian dari suatu event

Page 21: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

21

Method

Page 22: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

22

Membuat dan Memanggil Methodpublic class Mobil2{

String warna;

int tahunProduksi;

void printMobil(){

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

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

}

}

public class Mobil2Beraksi{

public static void main(String[] args){

Mobil2 mobilku = new Mobil2();

mobilku.warna = "Hitam";

mobilku.tahunProduksi = 2006;

mobilku.printMobil();

}

}

Mobil2.java

Mobil2Beraksi.java

Page 23: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

23

Latihan

▪ Buat class Handphone, masukkan dalam package hp

•Class Handphone berisi empat method di bawah:

1. hidupkan()

2. lakukanPanggilan()

3. kirimSMS()

4. matikan()

• Isi masing-masing method dengan tampilan status menggunakan System.out.println()

▪ Buat class HandphoneBeraksi, dan panggil method-method diatas dalam class tersebut

Page 24: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

24

Latihan: Hasil Tampilan

Handphone hidup …

Kring, kring, kring … panggilan dilakukan

Dung, dung … sms berhasil terkirim

Handphone mati …

Page 25: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

25

Latihan

▪ Buat class Mahasiswa yang berisi tiga method:

1. membaca()

2. nyontek()

3. modifikasi()

• Isi masing-masing method dengan tampilan status menggunakan System.out.println()

▪ Buat class MahasiswaBeraksi, dan panggil method-method diatas dalam class tersebut

Page 26: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

26

Jenis Method: Mutator dan Accessor

Page 27: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

27

Parameter▪ Sepeda akan berguna apabila ada object lain yang

berinterasi dengan sepeda tersebut

▪ Object software berinteraksi dan berkomunikasi dengan object lain dengan cara mengirimkan message atau pesan

▪ Pesan adalah suatu method, dan informasi dalam pesan dikenal dengan nama parameter

Page 28: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

28

Pengiriman Pesan dan Parameter

1. You → object pengirim

2. YourBicycle → object penerima

3. changeGears → pesan berupa method yang dijalankan

4. lowerGear →parameter yang dibutuhkan method (pesan) untuk dijalankan

Page 29: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

29

Page 30: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

30

Sepeda.javapublic class Sepeda{

int gir;

// method (mutator) dengan parameter

void setGir(int pertambahanGir) {

gir= gir+ pertambahanGir;

}

// method (accessor)

int getGir() {

return gir;

}

}

Page 31: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

31

SepedaBeraksi.javapublic class SepedaBeraksi{

public static void main(String[] args) {

Sepeda sepedaku = new Sepeda();

sepedaku.setGir(1); // menset nilai gir = 1 (sebelumnya 0)

System.out.println(“Gir saat ini: “ + sepedaku.getGir());

sepedaku.setGir(3); // menambahkan 3 pada posisi gir saat ini (1)

System.out.println(“Gir saat ini: “ + sepedaku.getGir());

}

}

Page 32: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

32

Latihan: Class Matematika dan Parameter

▪ Buat Class bernama Matematika, yang berisi method dengan dua parameter:

• pertambahan(int a, int b)

• pengurangan(int a, int b)

• perkalian(int a, int b)

• pembagian(int a, int b)

▪ Buat Class bernama MatematikaBeraksi, yang mengeksekusi method dan menampilkan:

• Pertambahan: 20 + 20 = 40

• Pengurangan: 10-5 = 5

• Perkalian: 10*20 = 200

• Pembagian: 21/2 = 10

Page 33: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

33

Variasi Tampilan

void pertambahan(int a, int b){

System.out.println(a + “ + “ + b + “ = “ + (a+b))

}

void pertambahan(int a, int b){

System.out.println(“Hasil = “ + (a+b))

}

void pertambahan(int a, int b){

int hasil = a + b;

System.out.println(“Hasil = “ + hasil)

}

Page 34: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

34

Konstruktor -1-

▪ Method yang digunakan untuk memberi nilai awal pada saat object diciptakan

▪ Dipanggil secara otomatis ketika new digunakan untuk membuat instan class

▪ Sifat konstruktor:

•Nama konstruktor sama dengan nama class

•Tidak memiliki nilai balik dan tidak boleh ada kata kunci void

Page 35: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

35

Konstruktor -2-public class Mobil {

String warna;

int tahunProduksi;

public Mobil(String warna, int tahunProduksi){

this.warna = warna;

this.tahunProduksi = tahunProduksi;

}

public void info(){

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

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

}

}

public class MobilKonstruktor{

public static void main(String[] args){

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

mobilku.info();

}

}

Mobil.java

MobilKonstruktor.java

Page 36: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

36

Kata Kunci this

Digunakan pada pembuatan class dan digunakan untuk menyatakan object sekarang

public class Mobil{

String warna;

int tahunProduksi;

void isiData(String aWarna,

int aTahunProduksi){

warna = aWarna;

tahunProduksi = aTahunProduksi;

}

public class Mobil{

String warna;

int tahunProduksi;

void isiData(String warna, int tahunProduksi){

this.warna = warna;

this.tahunProduksi = tahunProduksi;

}

Page 37: 1.3 Konsep Dasar Pemrograman Berorientasi Objekdinus.ac.id/repository/docs/ajar/Pertemuan2-Class,Objek,Method...Berorientasi Objek? Attribute: Topi, Baju, Jaket, ... Variable memiliki

37

Latihan

1. Buat class Bank

• Buat konstruktor class Bank dengan parameter: saldo

• Buat method: simpanUang, ambilUang, dan getSaldo

2. Buat class BankBeraksi, tetapkan saldo awal lewat konstruktur Rp. 100000, jalankan 3 method di atas, dan tampilkan proses sebagai berikut:

Selamat Datang di Bank ABCSaldo saat ini: Rp. 100000

Simpan uang: Rp. 500000Saldo saat ini: Rp. 600000

Ambil uang: Rp. 150000Saldo saat ini: Rp. 450000