LAPORAN RESMI
PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK
MODUL 6
“
PACKAGE
”
Disusun Oleh :
TANGGAL PRAKTIKUM
NAMA
NRP
KELAS
DOSEN PENGAMPU
: 18 Desember 2012
: Shobihatul Mubarokah Ayu A.
: 11.04.111.00039
: C2
: Muhammad Fuad,S.Kom
TELAH DISETUJUI TANGGAL
………..
Asisten Praktikum
(Nur Islami Syabaniyah)
NRP. 09.04.111.00076
COMMON COMPUTING LABORATORY
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK UNIVERSITAS
TRUNOJOYO
BAB I
PENDAHULUAN
1.1Latar Belakang
Ketika menangani program dalam skala kecil, tidak ada masalah untuk
meletakkan semua file java dalam satu direktori. Itu akan mempercepat dan
mempermudah pekerjaan dan masih aman. Tetapi jika project yang dikerjakan
semakin berkembang dan jumlah file yang dikerjakan semakin banyak serta
orang yang mengerjakan project lebih dari satu maka meletakkan file java ke
dalam satu direktori akan merepotkan pekerjaan karena software yang
dibangun akan tidak terstruktur. Maka dari itu Java menyediakan fitur untuk
menangani hal ini dengan memakai “Package”. Package adalah mengelompokkan kelas-kelas yang saling berelasi dan interfaces yang
memberikan proteksi terhadap access kelas yang tidak boleh diakses oleh
kelas lain karena tidak berelasi,dan manajemen nama. Ketentuan membuat
Package di Java yaitu :
package adalah 1 subfolder di file system.
Package sangat berguna untuk mengorganisir file dalam suatu Project atau library.
Nama package menggunakan lowercase. Keyword: package name.
1.2 Tujuan
1. Mahasiswa mengenal Package dalam program Java.
BAB II DASAR TEORI 2.1 Teori Dasar
Package adalah cara Java untuk membuat suatu pustaka class. Kita
dapat membuat package berisi sekumpulan class dan menggunakan package
tersebut dalam class atau program lain tanpa memindah kumpulan class ke dalam
direktori kerja. Untuk membuat package, letakkan beberapa file kode .java ke
dalam direktori dan tambahkan kata kunci package di awal setiap file kode
tersebut. Kemudian lakukan kompilasi sehingga dalam direktori terbentuk file
class. Sebelum suatu package dapat diimport oleh class lain, tambahkan path dari
BAB III
TUGAS PENDAHULUAN
1. Bagaimana agar class dalam suatu package dapat digunakan?
2. Mana yang lebih dahulu ditulis, kata kunci package atau import?
3. Tanda separator apa yang digunakan untuk memisahkan antara nama
package dengan nama class?
Jawaban :
1. Gunakan hak akses public, karena dengan menggunakan keyword Public
dapat diakses sembarang object manapun dan dimanapun posisinya serta
dengan apapun caranya. Namun, ketika file program tidak berada di dalam
satu direktori/ berada dalam package yang berbeda maka diharuskan untuk
melakukan kompilasi menggunakan option-class path. Maka Class-class
dalam suatu package tersebut harus disimpan pada directory yang sama
dengan nama packagenya..
2. Deklarasi package diletakkan sebelum deklarasi import dari source code
setiap kelas yang dibungkus package tersebut.
3. Tanda separator yang digunakan adalah tanda titik (.)
BAB IV
KEGIATAN PRAKTIKUM
Pada bagian kegiatan praktikum ini, kita akan belajar membuat class yang
dikelompokkan dalam package kemudian menggunakan package ini dari class
lain.
public class Pecahan implements MtkDasar{
private int pembilang, penyebut;
}
@Override
public String tambah(int a, int b) {
int atas= (pembilang*b)+(penyebut*a);
int bawah=(penyebut*b);
return (""+atas+ "/"+bawah+"");
}
@Override
public String kurang(int a, int b) {
int atas= (pembilang*b)-(penyebut*a);
int bawah=(penyebut*b);
return (""+atas+ "/"+bawah+"");
}
public String toString(){
return pembilang + "/" + penyebut;
}
}
package matematika;
import matematika.Pecahan;
/** *
* @author labdasar 20 */
public class CobaPecahan {
public static void main(String[] args) { Pecahan pecahan1 = new Pecahan(1, 2);
System.out.println("" + pecahan1 + " + 1/4 " + " = " + pecahan1.tambah(1, 4));
} }
BAB V
TUGAS PRAKTIKUM
5.1 Tugas Akhir
1. Modifikasilah kode program interface MtkDasar.java, dan Pecahan.java
agar dapat menghasilkan return value berupa Object.
2. Lengkapi interface MtkDasar dengan kemampuan matematika dasar yang
lain yaitu kali (untuk mengerjakan operasi perkalian), dan bagi (untuk
mengerjakan operasi pembagian). Sesuaikan kedua class lain, Pecahan dan
CobaPecahan.
Jawab :
package matematika;
public interface MtkDasar {
String tambah(Object obj);
String kurang(Object obj);
String kali(Object obj);
String bagi(Object obj);
}
package matematika;
import matematika.Pecahan;
public class Pecahan implements MtkDasar {
penyebut);
+ (pembilang1 * (penyHsl / penyebut1));
strHasil.insert(0, hasil);
- (pembilang1 * (penyHsl / penyebut1));
penyebut = data.getValuePenyebut();
tampil.insert(0, data.getValuePembilang());
tampil.insert(tampil.length() - 1, "/");
+ c + "/" + d + " = " + pecahanku.bagi(pecahan2));
}
}
}
5.2 Tugas Tambahan
1. Jelaskan perbedaan Interface dan Class
2. Jelaskan perbedaan Interface dan Abstract Class
Jawab :
1. Interface :
Sebuah blok signature kumpulan method tanpa tubuh (konstan).
Sebuah definisi method yang umum/general yang dapat menghubungkan class-class yang berbeda.
Dengan kata lain, interface memungkinkan kita mengimplementasikan method yang sama terhadap class yang tidak ada hubungan sama sekali
(tidak dalam satu hirarki)
Oleh karena itu interface bukanlah sebuah class, walaupun memiliki ciri yang serupa dengan abstract class.
Class :
Mendefinisikan class yang nyata.
Dapat membentuk atau instansiasi object.
Object hanya bisa dibuat dari non-abstract class (concrete class) Dapat menurunkan implementasi dari super class
Dapat sebagai base class pada hierarchical relationship dan membutuhkan class lain untuk mewarisinya
2.
Abstract Class Interface
Bisa berisi abstract dan
non-abstract method.
Hanya boleh berisi abstract method.
Kita harus menuliskan sendiri
modifiernya.
Kita tidak perlu susah2 menulis public
abstract di depan nama method.
method di interface adalah public dan
abstract.
Bisa mendeklarasikan constant
dan instance variable.
Hanya bisa mendeklarasikan
constant. Secara implisit variable
yang dideklarasikan di interface
bersifat public, static dan final.
Method boleh bersifat static. Method tidak boleh bersifat static.
Method boleh bersifat final. Method tidak boleh bersifat final.
Suatu abstact class hanya bisa
meng-extend satu abstract class
lainnya.
Suatu interface bisa meng-extend satu
atau lebih interface lainnya.
Suatu abstract class hanya bisa
meng-extend satu abstract class
dan meng-implement beberapa
interface.
Suatu interface hanya bisa
meng-extend interface lainnya. Dan tidak
bisa meng-implement class atau
BAB VI PENUTUP 6.1 Kesimpulan
Dari laporan praktikum modul 6 ini, dapat disimpulkan:
1. Package adalah sebuah kemasan yang dapat digunakan untuk
mengelompokkan kelas- kelas sehingga memungkinkan beberapa kelas
yang bernama sama disimpan dalam package yang berbeda.
2. Sebuah package pada Java dapat digunakan oleh packag eyang lain
ataupun kelas-kelas di luar Package.
3. Packagepada bahasa pemrograman Java dinyatakan dengan kode:
package nama_package; yang ditulis pada bagian atas kode program kelas
anggota package. Misal sebuah kelas dengan nama Mahasiswa ada di
dalam package dengan nama example.shobi maka file yang menyimpan
kode program kelas Mahasiswa dimasukkan dalam direktori.
6.2 Saran
Dalam menjelaskan materi diharapkan asisten praktikum dapat menjelaskan
lebih detai dan lebih jelas. Dimohon untuk memberikan lebih banyak contoh