LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

dokumen-dokumen yang mirip
LAPORAN RESMI INHERITANCE

PEWARISAN D E W I S A R T I K A, M. K O M

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR TIPE-TIPE FUNGSI ATAU METHOD

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 5 INTERFACE

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Membuat dan Menggunakan Class

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

UNIVERSITAS GUNADARMA

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Inheritance dan Kata Kunci static

Bahasa Pemrograman :: Polimorfism and Abstraction

Praktikum KPLBO Final Object Concept I

MODUL 2 Constructor. Tujuan: Mahasiswa dapat mengenal dan memahami konsep constructor dan overloading constructor

PRAKTIKUM PEMROGRAMAN LANJUT MODUL 1

PRAKTIKUM 5 PAKET, IMPORT DAN INTERFACE

Method yang ada pada parent class(superclass) didefinisikan kembali oleh kelas anaknya (subclass).

2 TIPE DATA DAN VARIABEL

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

Percobaan 5 Paket dan Import, Interface

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 4 PENGKAPSULAN

MODUL 3 Inheritance. Tujuan: Mahasiswa dapat mengenal dan memahami konsep inheritance dan cara menerapkan inheritance dengan constructor

PEMROGRAMAN BERORIENTASI OBJEK

BAB II VARIABEL DAN TIPE DATA

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

BAHASA PEMROGRAMAN JAVA

Project Kelompok 3. Pemrograman Berorientasi Objek Lukman Andi W ( )

Praktikum 6 Class Design (Encapsulation)

KONSEP OOP: PEWARISAN / INHERITANCE

Pemrograman Berorientasi Objek INHERITANCE

Abstract Class dan Interface. Viska Mutiawani, M.Sc

Kelompok 7. package (tiopan-programmer java) public class aritmatika1{ public static void main(string[]tiw){ int calculation = 1;

Praktikum KPLBO Class dan Object I

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Inheritance dan Polimorfisme

IKG2I4 / Software Project I

BAB 12 ENKAPSULASI, INHERITANCE DAN POLIMORPISME

Pemrograman Berorientasi. Class dan Obyek 2

Projek Kelompok 7. package (tiopan-programmer java) public class aritmatika1{ public static void main(string[]tiw){ int calculation = 1;

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR PROGRAM PENYEDERHANAAN PECAHAN

Tiopan Indra Wahyudi R5L PROJECT KELOMPOK 7 R5L. package brekk; public class brekk{ public static void main(string[]args){

Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO. Ramos Somya

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

Dasar-Dasar OOP di Java

subclass class manapun private default protected public package yang sama

PRAKTIKUM I Class dan Obyek

IKG2I4 / Software Project I

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XII KELAS DAN OBYEK

IKG2I4 / Software Project I

Modul Bahasa Pemrograman 1

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

Pemrograman Berorientasi. Abstract & Interface

Modul II Object Oriented Programming

Bab 8. Dasar-Dasar OOP

KONSEP OOP: PEWARISAN / INHERITANCE

INTERAKSI ANTAR OBJECT

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

LAPORAN V PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK

PEMROGRAMAN BERORIENTASI OBJEK

public class B extends A {... }

Pemrograman Berorientasi Obyek. Ramos Somya

MODUL 1 PENGENALAN OOP

PEMROGRAMAN BERORIENTASI OBJEK

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.

ABSTRACT & INTERFACE. Pemrograman Lanjut Herman Tolle

MEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom


Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

MODUL 1. CLASS, OBJECT, CONSTRUCTOR DAN METHOD

Dengan menggunakan encapsulation kita dapat membatasi akses langsung suatu class atau program kecuali melalui suatu method yang sudah diberikan.

[Lanjutan] Nurochman

PRAKTEK 1 CLASS, ATTRIBUTE, METHOD, DAN OBJEK

KA2173 Pemrograman Berorientasi Objek. 10 BAB X PENGAKSESAN DATABASE. H a l 64

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Pengenalan JavaScript

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

2.1 if Jenis-jenis Percabangan if adalah if, if else, If else if else if - else

Pertemuan 2 Struktur Kontrol Percabangan

Paket dan Interface. Nur Hasanah, M.Cs

Pemrograman Berorientasi Objek Danu Wira Pangestu

Modul Praktikum 3 Pemograman Berorientasi Objek

BAB 3 CLASS DAN OBJECT. Tujuan:

MODUL III ARRAYLIST TUGAS PENDAHULUAN

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

DASAR PEMROGRAMAN JAVA. Astrid Lestari Tungadi, S.Kom., M.TI.

SUMBER BELAJAR PENUNJANG PLPG

Inheritance (Pewarisan) Pengertian dasar inheritance

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

Method / Fungsi / Sub Program

Transkripsi:

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN BAB 6 ABSTRACTION Disusun Oleh : NAMA : FARIDATUS SHOFIYAH NRP : 13.06.311.00112 KELOMPOK : C1 DOSEN PENGAMPU : MEDIKA RISNASARI, MT ASISTEN : AGUS PRIYONO Disetujui :...-...-.../Bangkalan (AGUS PRIYONO) 120411100056 LABORATORIUM MICROTEACHING DAN KOMPUTER JURUSAN PENDIDIKAN INFORMATIKA FAKULTAS KIP UNIVERSITAS TRUNOJOYO MADURA 2014

BAB I PENDAHULUAN 1.1 Latar Belakang Pada umumnya abstract class hanya berisi variable-variabel umum dan abstract method tanpa body, kemudian baru pada class turunannya mendefinisikan secara detil body methodnya. Untuk membuat abstract class dan abstract method menggunakan keyword abstract. Interface berisi sekumpulan konstanta dan atau deklarasi method tanpa menyertakan body methodnya yang dapat digunakan pada sejumlah class. Sekilas Interface mirip dengan Abstract Class karena sama-sama menentukan bentuk method untuk subclass-nya. 1.2 Tujuan Mahasiswa mampu membuat kelas Abstrak untuk Menthod Abstraksi.

BAB II DASAR TEORI I. TEORI Abstraction Abstract class digunakan sebagai model atau acuan (superclass) bagi penurunan untuk sub-sub class-nya. Pada umumnya abstract class hanya berisi variable-variabel umum dan abstract method tanpa body, kemudian baru pada class turunannya mendefinisikan secara detil body methodnya. Untuk membuat abstract class dan abstract method menggunakan keyword abstract. Berikut contoh untuk mendefinisikan abstract class, abstract method, non abstract method. public abstract class Manusia{ protected String nama, jns_kel; public Manusia() { public abstract String setnama(string nama); public abstract void getnama(); public String cetak() { return this.nama + "/n" + this.jns_kel; Abstraksi adalah proses pengabstrakan atau penyembunyian detail program yang sangat rumit sehingga kita tidak perlu untuk mempermasalahkan pembuatannya. Kita hanya perlu obyek tersebut dapat kita gunakan sesuai fungsinya. Dalam java suatu metode ditentukan dari dalam kelas tetapi tidak disertai definisinya, metode ini dikenal dengan metode abstrak, sedangkan kelasnya disebut kelas abstrak. Definisi kelas diletakkan pada masing-masing kelas turunannya. Kelas abstrak biasanya dibuat apabila pada subkelas-subkelas memerlukan operasi yang sama dengan metode tersebut, akan tetapi antara subkelas dengan subkelas lain memiliki tindakan yang berbeda.untuk mendeklarasikan kelas abstrak dan metodenya, dipergunakan kata kunci abstract. The final keyword

Pada Java terdapat keyword final yang digunakan untuk mencegah suatu class diturunkan atau suatu method di-override. Keyword final dituliskan pada class atau method setelah access modifier. Sebagai contoh perhatikan penggunaan keyword final berikut: public final class TestFinal { private String username, password; public TestFinal() { this.username = "labkom"; this.password = "LABKOM-123"; public final boolean isvalid(string n, String p) { if(n.equals(username) && p.equals(password)) { return true; else return false; Sebagai catatan, class atau method yang diberi attribut atau keyword final tidak boleh berupa abstract class atau abstract method. Karena abstract class harus diturunkan, sedangkan abstract method harus di-override pada subclass. Interface Interface berisi sekumpulan konstanta dan atau deklarasi method tanpa menyertakan body methodnya yang dapat digunakan pada sejumlah class. Sekilas Interface mirip dengan Abstract Class karena sama-sama menentukan bentuk method untuk subclass-nya. Untuk mengetahui perbedaan keduanya, kita amati table perbedaan Interface dengan Abstract Class berikut: Abstract Class Dapat berisi abstract method dan non abstract method. Dapat berisi variabel instant dan konstanta. Menggunakan extends. Pada 1 class pewarisan hanya dapat mewarisi 1 abstract class.

Interface Abstract method harus di-override pada class turunan, sedagkan yang bukan abstract method tidak harus dituliskan pada class turunannya. Hanya berisi abstract method saja. Hanya dapat berisi konstanta saja. Menggunakan implements. Pada 1 class pewarisan dapat mewarisi lebih dari 1 interface Semua method harus diturunkan pada class implement-nya Berikut contoh deklarasi interface: public interface Manusia { public String setnama(string nama); public void getnama(); Package Sejumlah class yang terkait pada Java biasa dikelompokkan dalam sebuah unit yang disebut package (paket). Pada NetBeans kita dapat mendeklarasikan JavaPackage dalam 1 project, atau dengan kata lain 1 project dapat memiliki 2 atau lebih package. Untuk membuat atau mendeklarasikan package dengan menggunakan keyword package. Berikut contoh membuat class Mahasiswa08 dan class Mahasiswa09 dalam package modul2c package modul2c; public class Mahasiswa08 { public void getdata() { System.out.println("Mahasiswa SI 2008"); package modul2c; public class Mahasiswa09 { public void getdata() { System.out.println("Mahasiswa SI 2009"); Untuk melakukan tes terhadap package yang sudah kita buat, buatlah sebuah main class yang terletak di luar package modul2c seperti pada gambar berikut. Untuk

memanggil class dalam package, gunakanlah keyword import. Jika tidak, maka class tidak bisa di-instance-kan karena tidak dikenali.

BAB III IMPLEMENTASI I. PELAKSANAAN PRAKTIKUM 1. Contoh program abstraction Simpan dengan nama Pelajar.java package modul6; //@author FARIDATUS SHOFIYAH/130631100112 public abstract class Pelajar { protected String nama; public abstract void belajar(); Simpan dengan nama TesAbstrak1.java package modul6; //@author Faridatus Shofiyah/130631100112 class Siswa1 extends Pelajar{ public Siswa1 (String nama){ this.nama = nama; @Override public void belajar() { System.out.println(this.nama+ "memperhatikan gurunya yang mengajar didepan kelas"); class Siswa2 extends Pelajar{ public Siswa2(String nama){ this.nama = nama; public void belajar(){ System.out.println(this.nama+ "memperhatikan gurunya yang mengajar didepan kelas"); class TestAbstrak1{ public static void main(string[] args) { Siswa1 mhs = new Siswa1(" Azzahra"); mhs.belajar(); Siswa2 murid = new Siswa2(" Aisyah"); murid.belajar();

2. Program abstract Simpan dengan nama Titik.java package modul6; //@author Faridatus Shofiyah/130631100112 abstract class Titik { private int x; private int y; public Titik() { x = 0; y = 0; public Titik(int xp, int yp) { x = xp; y = yp; public void setx(int xp){ x = xp; public int getx(){ return x; public void sety(int yp){ y = yp; public int gety(){ return y; public abstract void printtitik(); public void finalize(){ class Titik3D extends Titik{ private int z; public Titik3D() { z = 0; public Titik3D( int xp, int yp, int zp) { setx(xp); sety(yp); z = zp; public void setz(int zp){ z = zp;

public int getz(){ return z; public void printtitik(){ System.out.println("nilai X : "+getx()); System.out.println("nilai Y : "+gety()); System.out.println("nilai Z : "+getz()); class CobaTitik3DP{ public static void main(string[] args) { Titik3D t = new Titik3D(0, 0, 7); t.setx(28); t.sety(1); t.printtitik(); Titik tl; System.out.println("========================"); tl = t; tl.printtitik();

3. TUGAS 1. Buatlah sebuah abstract class Login dimana pada class tersebut terdapat 2 method, yaitu validasi() dan cekdata(). Buatlah sebuah class yang mengimplementasikan interface tersebut yaitu class DataLogin dengan penjelasan sebagai berikut: Method validasi(): bertipe boolean, digunakan untuk memastikan bahwa username dan password tidak boleh kosong (wajib diisi), tentukan sendiri parameternya. Method cekdata(): bertipe boolean, digunakan untuk mengecek username dan password apakah cocok dengan yang terdapat di atribut class DataLogin. (private String username1="mhs", private String pass1="mahasiswa@#$", private String username2="mahasiswa", private String pass2="praktikum@#$"), tentukan sendiri parameternya. Buatlah class TestLogin yang menggunakan class DataLogin dengan aturan sebagai berikut, saat program dijalankan, tampilkan menu utama sebagai berikut: MENU UTAMA -------------------- Menu Pilihan: A. LOGIN B. EXIT -------------------- Pilihan Anda: User dapat memilih pilihan dengan huruf besar maupun huruf kecil. Jika LOGIN dipilih, maka user diminta menginputkan nama user dan password. Jika salah, maka tampilkan pesan bahwa user salah menginputkan username atau password atau keduanya dan program kembali ke menu utama. Jika benar, maka tampilkan menu pilihan sebagai berikut:

Selamat datang XXXXX ==================== MENU PILIHAN ------------------------- 1. Data Pegawai 2. LOG OFF Pemrograman JAVA -------------------- Pilihan Anda: XXXXX = nama user yang sedang login. Jika user memilih pilihan 1, maka jalankan class utama Jika user memilih pilihan 2, maka tampilan kembali ke menu utama (tidak keluar dari program). Program akan selesai jika user memilih EXIT. 2. Dengan soal nomor 1, gunakan konsep interface, yaitu interface Login. Untuk melakukan testing program, buatlah sebuah class main dengan menggunakan konsep package. 3. Buatlah sebuah outer class Email yang memiliki inner class level 1 dengan nama class BodyContent dan class Recipient. Variabel dan method pada tiap class dapat kalian tentukan sendiri. Setelah itu buatlah class main yang menginstancekan outer class dan inner class tersebut, buatlah contoh implementasi sesuai kreatif kalian. Jawaban 1. Simpan dengan nama Login.java package tugas; public abstract class Login{ public abstract boolean Validasi(String usernama, String password) ; public abstract boolean cekdata(string username, String password) ; Simpan dengan nama DataLogin.java

package tugas; public class DataLogin extends Login{ String userasli = "admin"; String passsword = "admin123"; @Override public boolean Validasi(String username, String password) { if(username!= null && password!=null){ return true; return false; @Override public boolean cekdata(string username, String password) { if(username.equalsignorecase(userasli) && password.equalsignorecase(password)){ return true; return false; Simpan dengan nama TestLogin.java

package tugas; import java.util.scanner; public class TestLogin { public static void main(string[] args) { Scanner in = new Scanner(System.in); DataLogin data = new DataLogin(); int pilihan; do{ System.out.println("Menu Utama" + "\n1.login" + "\n2.exit"); pilihan = in.nextint(); if (pilihan == 1){ System.out.println("Usernama : "); String user = in.next(); System.out.println("Password : "); String pass = in.next(); if(data.validasi(user, pass) == true && data.cekdata(user, pass)==true){ int pilihan2; do{ System.out.println("Selamat Datang"+user); System.out.println("1. Data Pegawai"); System.out.println("2. Log off"); pilihan2 = in.nextint(); if(pilihan2 == 1){ System.out.println("user : "+user); System.out.println("pass : "+pass); while(pilihan2 ==1); else{ System.out.println("login gagal"); while(pilihan!=2); 2. Simpan dengan nama Interface_Login.java

package tugas; public interface Interface_Login{ public abstract boolean Validasi(String usernama, String password) ; public abstract boolean cekdata(string username, String password) ; Simpan dengan nama DataLogin.java package tugas; public class Interface_DataLogin implementasi Login{ String userasli = "admin"; String passsword = "admin123"; @Override public boolean Validasi(String username, String password) { if(username!= null && password!=null){ return true; return false; @Override public boolean cekdata(string username, String password) { if(username.equalsignorecase(userasli) && password.equalsignorecase(password)){ return true; return false; Simpan dengan nama TestLogin.java

package tugas; import java.util.scanner; public class TestLogin { public static void main(string[] args) { Scanner in = new Scanner(System.in); DataLogin data = new DataLogin(); int pilihan; do{ System.out.println("Menu Utama" + "\n1.login" + "\n2.exit"); pilihan = in.nextint(); if (pilihan == 1){ System.out.println("Usernama : "); String user = in.next(); System.out.println("Password : "); String pass = in.next(); if(data.validasi(user, pass) == true && data.cekdata(user, pass)==true){ int pilihan2; do{ System.out.println("Selamat Datang"+user); System.out.println("1. Data Pegawai"); System.out.println("2. Log off"); pilihan2 = in.nextint(); if(pilihan2 == 1){ System.out.println("user : "+user); System.out.println("pass : "+pass); while(pilihan2 ==1); else{ System.out.println("login gagal"); while(pilihan!=2); 3. Simpan dengan nama Email.java

package tugas; /** * @author LaptopKU */ public class Email { class recipient{ String nama, subject; public void Data(String nama, String subject){ System.out.println("Nama : "+nama+"\nsubject : "+subject); class bodycontent{ String isi; public void IsiPsn(String isi){ System.out.println ("Isi Pesan : "+isi); Simpan dengan nama Main_Email.java package tugas; import java.util.scanner; /** @author Faridatus Shofiyah */ public class Main_Email { public static void main(string[] args) { Scanner in = new Scanner(System.in); System.out.println("Masukkan Nama : "); String nama = in.next(); System.out.println("Masukkan Subject : "); String subj = in.next(); System.out.println("Isi Pesan : "); String pesan = in.next(); System.out.println("============================"); Email email = new Email(); Email.recipient a = email.new recipient(); a.data(nama, subj); Email.bodyContent b = email.new bodycontent(); b.isipsn(pesan);

BAB IV PENUTUP 4.1 Kesimpulan Abstract class digunakan sebagai model atau acuan (superclass) bagi penurunan untuk sub-sub class-nya. Pada umumnya abstract class hanya berisi variable-variabel umum dan abstract method tanpa body, kemudian baru pada class turunannya mendefinisikan secara detil body methodnya. Untuk membuat abstract class dan abstract method menggunakan keyword abstract. Mendeklarasikan kelas abstrak dan metodenya, dipergunakan kata kunci abstract. Pada Java terdapat keyword final yang digunakan untuk mencegah suatu class diturunkan atau suatu method di-override. Keyword final dituliskan pada class atau method setelah access modifier. Sebagai catatan, class atau method yang diberi attribut atau keyword final tidak boleh berupa abstract class atau abstract method. Karena abstract class harus diturunkan, sedangkan abstract method harus di-override pada subclass. Interface berisi sekumpulan konstanta dan atau deklarasi method tanpa menyertakan body methodnya yang dapat digunakan pada sejumlah class. Sekilas Interface mirip dengan Abstract Class karena sama-sama menentukan bentuk method untuk subclass-nya. Table perbedaan Interface dengan Abstract Class berikut: Abstract Class Dapat berisi abstract method dan non abstract method. Dapat berisi variabel instant dan konstanta. Menggunakan extends. Pada 1 class pewarisan hanya dapat mewarisi 1 abstract class. Abstract method harus di-override pada class turunan, sedagkan yang bukan abstract method tidak harus dituliskan pada class turunannya. Interface Hanya berisi abstract method saja. Hanya dapat berisi konstanta saja.

Menggunakan implements. Pada 1 class pewarisan dapat mewarisi lebih dari 1 interface Semua method harus diturunkan pada class implement-nya Sejumlah class yang terkait pada Java biasa dikelompokkan dalam sebuah unit yang disebut package (paket)..