Modul 6: Abstract Class, abstract method

Slides:



Advertisements
Presentasi serupa
EXCEPTION HANDLING.
Advertisements

Pemrograman Berorientasi Objek (Project)
Pemrograman JAVA (TIB09)
Modul 5: Constructor, Overloading, inheritance, Polymorphism
- PERTEMUAN 2 - TIPE DATA DI JAVA
Deklarasi Class Kelas pada Java dideklarasikan dengan menggunakan kata kunci class. Contoh : class Mobil { String warna; int thn_prod; } Mobil Data :
Malang,22 November 2012
Java Progamming Operasi I/O
Pemrograman Berorientasi Objek
Kelas & Objek.
Pemrograman Dasar[PTI-15001] 2012
DASAR-DASAR PEMROGRAMAN C
Nur Hayatin, S.ST Referensi : Gunadarma University.
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
Abstract Class & Interface
Pemrograman JAVA (TIB09)
Pemrograman Berorientasi Objek
Modul 3: Kendali program dan teknik penyimpanan data
Flow Control & Exception Handling
PERTEMUAN 4 Penyeleksian kondisi
Struktur Data & Algoritma Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) ‏ 1 Fasilkom UI SUR – HMM – AAFasilkom UI - IKI20100/ IKI80110P.
Modul 1- Review Java.
Pemrograman Terstruktur
KONTROL ALUR EKSEKUSI PROGRAM
Pemrogramman Terstruktur
SLIDE OTOMATIS PINDAH DALAM WAKTU 4-5 MENIT. A:kiriB:kanan Deklarasikan sebuah variabel dengan nama ‘isi’ yang mempunyai type array of double dengan ukuran.
Method.
Modul 9: antarmuka grafis (GUI) dalam window
Dasar Pemrograman ARRAY/LARIK.
Pertemuan 8 Pemrograman Berbasis Obyek Oleh Tita Karlita
MATA KULIAH : PEMROGRAMAN 3 JAVA PROGRAMMING (JSE)
I/O Stream lanjutan.
Pemrograman Berorientasi Objek 1
Mendapatkan Input dari Keyboard
Variabel, Method & Constructor Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
Struktur Kode Aplikasi Java (1)
Modul 2: Class, Objek, data, variabel dan operator
Pemrograman Berorientasi Objek 1
PELATIHAN JAVA FUNDAMENTAL
Diberikan pada Kuliah Sela Teknik Informatika - Universitas Muhammadiyah Malang Tahun 2011.
07 Advanced Class Features
Modul 7: package dan package standard java
DASAR-DASAR PEMROGRAMAN JAVA
INHERITANCE (Oleh : Nur Hayatin, S.ST)
Exceptional Pendahuluan Bugs dan error dalam sebuah program sangat sering muncul meskipun program tersebut dibuat oleh programmer berkemampuan tinggi.
Basic Class Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 3 Tahun : 2008 Versi : 1/0.
03 Elemen Dasar Bahasa Java
MATERI IV OOP (Object Oriented Programming) Chapter II.
Try, Catch, Finally Throws
Pertemuan 6 PEWARISAN AND POLYMORPHISM
Command line argument.
Modul 6: Abstract Class, abstract method
Kendali program dan teknik penyimpanan data
Constructor dan Overloading
Package dan package standard java
Kelas-kelas Dasar di Java
Pemrograman berorientasi Objek
Command line argument.
Tipe Data, Variabel, dan Operator
Class, Objek, data, variabel dan operator
Lebih Jauh tentang Class, Objek dan Method
Tipe Data, Variabel, dan Operator
PEMROGRAMAN JAVA.
Modul 6: Abstract Class, abstract method
Constructor, Overloading, inheritance, Polymorphism
Package dan package standard java
Kendali program dan teknik penyimpanan data
Pemrograman Berorientasi Objek
Tipe Data, Variabel, dan Operator
Mengulang Kembali Type Data Input Output Struktur Kontrol
Transcript presentasi:

Modul 6: Abstract Class, abstract method Setelah mengikuti mata kuliah ini mahasiswa dapat menjelaskan konsep abstract class dan penggunaannya Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Pengantar : Dalam modul ini akan diuraikan beberapa topik bahasan yaitu : class abstract method abstract studi class abstract java : Number class turunan Number :Integer, Float, Long,Double sebagai wrapper konversi data: bilangan ke string Modul 6 - Abstract class and method

1. Pengertian abstract class Suatu kelas sangat mungkin didefinisikan sebagai super class yang darinya diturunkan sub-klas sub-klas turunannya Kita tidak bermaksud mendefinisikan objek dari super class tersebut. Super class tersebut didefinisikan semata-mata hanya sebagai “payung” atau “induk” dari klas-klas turunannya. Dari klas-klas turunan ini lah objek yang sebenarnya akan diciptakan. Suatu super klass yang didefinisikan seperti ini dinamakan sebagai class abstract. Modul 6 - Abstract class and method

2. Pengertian abstract method Di dalam class abstract dapat didefinisikan atribut-atribut dan method-method. Atribut dan method yang didefinisikan dalam klass abstract dimaksudkan merupakan sesuatu yang umum dan terdapat pada sub-kelas sub-kelas turunannya. Suatu abstract method didefinisikan dengan cukup mendeklarasikan namanya pada class abstract dan meng-override pada masing-masing kelas turunannya dengan menyesuaikan dengan kebutuhan kelas turunannya tersebut. Suatu class harus didefinisikan sebagai class abstract apabila minimal ada satu method yang didefinisikan sebagai abstract method. Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Contoh kasus MailBox Metod play() : didefinisikan sebagai abtract method , karena play untuk text adalah berbeda dengan play untk voice Sehingga class Message adalah class abstract Untuk data sender dan metod getSender(), semua class turunan memiliki definisi yang sama sehingga data dan metod tersebut didefinisikan bukan sebagai abstrat Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Class Message Satu-satunya metod abstract Yang mengharuskan class Message didefinisikan secara abtract Untuk class turunan FaxMessage tidak didefinisikan Modul 6 - Abstract class and method

Modul 6 - Abstract class and method class Mailbox Modul 6 - Abstract class and method

class MailboxTest (class utama) berlanjut… Modul 6 - Abstract class and method

class MailboxTest … lanjutan Modul 6 - Abstract class and method

Hasil program MailboxTest Pesan ke 1 : text dari : AMIR isi pesan : HABIS KULIAH LANGSUNG PULANG YA JANGAN MAIN2 Pesan ke 2: text dari : BUDI isi pesan : SUDAH LAPAR Pesan ke 3 : voice dari : JOHAN isi pesan : suara music dalam file spacemusic.au Modul 6 - Abstract class and method

3. Class abstract java : Number Dalam class java ada class abstract, yaitu class Number Class ini menjadi payung bagi class number wrapper, yaitu : Integer, Long, Float, dan Double Class Number memiliki 4 buah metod abstract yaitu intValue(), longValue(), floatValue() dan doubleValue() Modul 6 - Abstract class and method

Modul 6 - Abstract class and method 4. Class Turunan Number 4 class didefnisikan secara class final Pada setiap class turunan didefnisikan metod-metod abstractnya Pada setiap class turunan didefinisikan metod toString() Modul 6 - Abstract class and method

5. Penggunaan class Number wrapper untuk konversi data Pada setiap operasi data umumnya diperlukan proses KONVERSI DATA DARI STRING KE BILANGAN DAN SEBALIKNYA Untuk konversi data dari String menjadi bilangan ditempuh dengan menjadikan string tersebut sebagai parameter pada pembuatan objek. Selanjutnya karena pada class ada metod intValue(), longValue(), floatValue() dan doubleValue() maka nilai-nilai bilangan yang bersangkutan :int, long, float dan double dapat diperoleh Untuk konversi dari bilangan (int, long, float, double) ke string cara yang ditempuh adalah dengan menjadikan bilangan tersebut sebagai argumen pada pembuatan objek class numberWrapper dan kemudian menggunakan metod toString() untuk mengambil stringnya Modul 6 - Abstract class and method

Program cetak Hello n kali dengan n diinput dari command line Tahukah anda apa fungsi String[] arg dalam metod main?? Jawabannya adalah bahwa setiap program dieksekusi dengan java.exe, maka kita diberi kesempatan melewatkan parameter 1, 2 atau lebih Parameter yang dilewatkan selanjutnya disimpan sebagai string dalam array of string arg yang akan otomatis diciptakan dengan ukuran sesuai dengan jumlah para meter Jika parameter satu, misalnya untuk nama program Cetak.java yang tyelah dikompilasi > java Cetak Hello disini “Hello” akan disimpan dalam arg[0] Jika parameter 2, misalnya >java Cetak Hello AKPRIND Disini “Hello” akan disimpan dalam arg[0] dan akpirnd pada arg[1] Dst… Modul 6 - Abstract class and method

Program CetakHello.java Dalam program ada statemen Integer N= new Integer(arg[0]) arg[0] untk eksekusi tersebut berisi string “4” Seteleh objek Integer N dibuat kita dapat memperoleh nilai int dari objek N dengan menggunakan intValue() Dengan demikian n adalah nilai int 4 untuk string “4” Konversi berhasil dilakukan Modul 6 - Abstract class and method

Baca dari keyboard ? Baca bilangan dari keyboard ? Untuk mencetak kelayar kita menggunakan System.out.println(…) Bagaimana untuk membaca data dari keboard?? Pemrogram java awal akan kebingungan karena java tidak menyediakan statemen langusng untuk membaca data baik string atau bilangan dari keyboard Sementara sebagaimana C++ punya statemen cin>> , PASCAL punya statemen read(var) dan BASIC punya steteman INPUT untuk membaca data baik string maupun bilangan dari keyboard Persoalan ini dapat dijawab dengan mendefinisikan sendiri metod untuk keperluan tersebut menggunakan statemen dasar java : System.in.read() Modifikasi dilakukan karena System.in.read() adalah membaca data 1 byte dari keyboard. Sehingga harus didefinisikan metod untuk membaca berkali-kali sampai diinputkan ENTER Modul 6 - Abstract class and method

Membaca string dari keyboard dengan metod bacaString() bacaString() didefinisikan untuk membaca data string dari keyboard sampai diketik enter. static String bacaString() throws Exception {String s="";int c=0; while(c!=13) {c=System.in.read(); if((c!=13)&(c!=10)){s+=(char)c; } } return s; Modul 6 - Abstract class and method

bacaInt(), bacaFloat(), bacaDouble() Dari metod bacaString(), kita dapat mengkonversi string menjadi bilangan jika string yang dibaca adalah bilangan static int bacaInt() throws Exception {return Integer.parseInt(bacaString());} static float bacaFloat() throws Exception {return Float.parseFloat(bacaString());} static double bacaDouble() throws Exception {return Double.parseDouble(bacaString());} Penerapan metod-metod tersebut ada dalam program berikut : Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Program lengkapnya… Hasilnya Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Rangkuman Class abstract didefinisikan untuk suatu class yang tidak dibaut objeknya Class abstract hanya dijadikan payung bagi class-class anak yang sejenis Suatu metod didefinisikan sebagai abstract jika ia hanya didefinisikan nama metod dan parameternya Suatu class harus didefinisikan sebagai abstract jika ada satu saja metod abstract Turunan class Number yaitu Integer, Long, Float dan Double dapat digunakan untuk konversi data dari String ke bilangan dan sebaliknya Konversi dapat bolak-balik antara int, long, float dan double ke dan dari string Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Latihan 1. Definisikan suatu class abstract bernama :class Orang dengan ketentuan : Dalam kelas tersebut ada atribut :Nama (String: yaitu nama orang tersebut) dan Umur (int :yaitu umur orang tersebut). Constructor dari class Orang didefinisikan dalam class Orang menginisialisasi Nama dan Umur. Didefinisikans method abstract Cetak(), yang akan di-override dalam kelas turunannya. 2. Definisikan dua buah kelas turunan dari class Orang yaitu class :Pegawai dan class Mahasiswa. Modul 6 - Abstract class and method

Modul 6 - Abstract class and method Lanjutan… Untuk class Pegawai dengan ketentuan : Dalam kelas Pegawai ada atribut tambahan yaitu NIP dan Gaji Mendefinisikan method NaikGaji(), yaitu untuk menaikkan gaji sebesar :10% Mendefinisikan method Cetak() untuk mencetak :NIP, Nama, Umur (int) dan Gaji (double) Untuk class Mahasiswa dengan ketentuan : Dalam kelas Mahasiswa ada atribut tambahan yaitu NoMhs (String), Masa studi (int) dan IP (double) Mendefinisikan method Cetak() untuk mencetak :NoMhs, Nama, Umur, Masa studi dan IP Ujilah kemampuan klas tersebut dengan mendefinisikan klass TestOrang.java untuk program utamanya. Modul 6 - Abstract class and method