Jumat, 24 Juni 2011

Modul 6 Praktikum PBO : Package

Ni modul trakhir dari praktikum PBO temen2... langsung ja y bahas....tentang package...

Package adalah 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.

Pada suatu package, class dapat digunakan Gunakan hak akses public, karena dengan menggunakan keyword Public dapat diakses didalam class itu sendiri, dapat diakses dengan menggunakan metode extend dan instan pada paket yang sama, serta dapat diakses dengan metode extend maupun instan dalam paket yang berbeda. Artinya hak akses public dapat diakses oleh sembarang object manapun dan dimanapun posisinya serta dengan apapun caranyanamun, ketika file program tidak berada di dalam satu direktori/ berada dalam package yang berbeda maka diharuskan untuk melakukan kompilasi menggunakan option-class path

Pada package, kata kunci yang harus ditulis terlebih dahulu sebelum import adalah
Deklarasi package harus diletakkan pada bagian paling awal (sebelum deklarasi import) dari source code setiap kelas yang dibungkus package tersebut.

pada package juga untuh mmbedakan package dengan class, maka pada penulisan package harus memiliki syaratt Diawali huruf kecil , Menggambarkan kelas-kelas yang dibungkusnya, Harus unik (bertbeda dengan namapackage standard) , Merepresentasikan path dari package tersebut., Harus sama dengan nama direktorinya.

Implementasi dan Tugas Akhir
Pada bagian kegiatan praktikum dan Tugas akhir ini, kita gabung yaitu kita akan belajar membuat class yang dikelompokkan dalam package kemudian menggunakan package ini dari class lain. Modifikasilah kode program interface MtkDasar.java, dan Pecahan.java agar dapat menghasilkan return value berupa Object. 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.
Source codenya sebagai berikut:Source codenya sebagai berikut:
Class MtkDasar.java



/*

/*interface MtkDasar*/
/*file Matematika/MtkDasar.java*/
package Matematika;
public interface MtkDasar {
String tambah(Object obj);
String kurang(Object obj);
String kali(Object obj);
String bagi(Object obj);
}



Class pecahan.java


/*

/*kelas Pecahan*/
/*file Matematika/Pecahan.java*/
package Matematika;
public class Pecahan implements Matematika.MtkDasar{
private int pembilang, penyebut;
public Pecahan(int pembilang, int penyebut) {
this.pembilang=pembilang;
this.penyebut=penyebut;
}
public int getValuePembilang(){
return this.pembilang;
}
public int getValuePenyebut(){
return this.penyebut;
}
public int penyebutHsl(int a,int b){
int hsl;
if (a%b==0 || b%a==0){
if (a>=b){
hsl=(a/b)*b;
}else{
hsl=(b/a)*a;
}
}else{
hsl=a*b;
}
return hsl;
}
public String tambah(Object obj){
StringBuffer strHasil= new StringBuffer(" ");
Pecahan data = new Pecahan(pembilang,penyebut);
pembilang=data.getValuePembilang();
penyebut=data.getValuePenyebut();
Pecahan tambah = (Pecahan)obj;
int pembilang1=tambah.getValuePembilang();
int penyebut1=tambah.getValuePenyebut();
int penyHsl=tambah.penyebutHsl(penyebut,penyebut1);
int hasil = (pembilang*(penyHsl/penyebut))+(pembilang1*(penyHsl/penyebut1));
strHasil.insert(0,hasil);
strHasil.insert(strHasil.length()-1,"/");
strHasil.insert(strHasil.length()-1,penyHsl);
return(strHasil.toString());
}
public String kurang(Object obj){
StringBuffer strHasil= new StringBuffer(" ");
Pecahan data = new Pecahan(pembilang,penyebut);
pembilang=data.getValuePembilang();
penyebut=data.getValuePenyebut();
Pecahan tambah = (Pecahan)obj;
int pembilang1=tambah.getValuePembilang();
int penyebut1=tambah.getValuePenyebut();
int penyHsl=tambah.penyebutHsl(penyebut,penyebut1);
int hasil = (pembilang*(penyHsl/penyebut))-(pembilang1*(penyHsl/penyebut1));
strHasil.insert(0,hasil);
strHasil.insert(strHasil.length()-1,"/");
strHasil.insert(strHasil.length()-1,penyHsl);
return(strHasil.toString());
}
public String kali(Object obj){
StringBuffer strHasil= new StringBuffer(" ");
Pecahan data = new Pecahan(pembilang,penyebut);
pembilang=data.getValuePembilang();
penyebut=data.getValuePenyebut();
Pecahan kali = (Pecahan)obj;
int pembilang1=kali.getValuePembilang();
int penyebut1=kali.getValuePenyebut();
int penyHsl=kali.penyebutHsl(penyebut,penyebut1);
int hasil = (pembilang)*(pembilang1);
strHasil.insert(0,hasil);
strHasil.insert(strHasil.length()-1,"/");
strHasil.insert(strHasil.length()-1,penyHsl);
return(strHasil.toString());
}
public String bagi(Object obj){
StringBuffer strHasil= new StringBuffer(" ");
Pecahan data = new Pecahan(pembilang,penyebut);
pembilang=data.getValuePembilang();
penyebut=data.getValuePenyebut();
Pecahan bagi = (Pecahan)obj;
int pembilang1=bagi.getValuePembilang();
int penyebut1=bagi.getValuePenyebut();
int penyHsl=bagi.penyebutHsl(penyebut,penyebut1);
int hasil = (penyebut)*(pembilang1);
strHasil.insert(0,hasil);
strHasil.insert(strHasil.length()-1,"/");
strHasil.insert(strHasil.length()-1,penyHsl);
return(strHasil.toString());
}
public String toString() {
StringBuffer tampil= new StringBuffer(" ");
Pecahan data = new Pecahan(pembilang,penyebut);
tampil.insert(0,data.getValuePembilang());
tampil.insert(tampil.length()-1,"/");
tampil.insert(tampil.length()-1,data.getValuePenyebut());
return (tampil.toString());
}
}



Class CobaPecahan.java


/*

/*kelas cobaPecahan*/
/*file cobaPecahan.java*/
import Matematika.Pecahan;
import javax.swing.JOptionPane;
public class cobaPecahan {
public static void main(String[] args) {
int a; int b; int c; int d;
// TODO code application logic here
System.out.println("Format : a/b Operator[+/-] c/d = hasilPecahan \nexample: 1/2 + 3/4 = 5/4 \n");
System.out.println("Operator Prak PBO");
System.out.println("\n--------------------------\n");
System.out.print("Masukkan nilai a : ");
a = Integer.parseInt(JOptionPane.showInputDialog(null,"Input nilai a", "Input", JOptionPane.QUESTION_MESSAGE));
System.out.println(+a);
System.out.print("Masukkan nilai b : ");
b = Integer.parseInt(JOptionPane.showInputDialog(null,"Input nilai b", "Input", JOptionPane.QUESTION_MESSAGE));
System.out.println(+b);
System.out.print("\nMasukkan nilai Operator [+ ; - ; * ; /] : ");
String op= JOptionPane.showInputDialog("silahkan input operator");
System.out.print("\nMasukkan nilai c : ");
c = Integer.parseInt(JOptionPane.showInputDialog(null,"Input nilai c", "Input", JOptionPane.QUESTION_MESSAGE));
System.out.println(+c);
System.out.print("Masukkan nilai d : ");
d = Integer.parseInt(JOptionPane.showInputDialog(null,"Input nilai d", "Input", JOptionPane.QUESTION_MESSAGE));
System.out.println(+d);

Pecahan pecahan1 = new Pecahan(Integer.valueOf(a).intValue(),Integer.valueOf(b).intValue());
Pecahan pecahan2 = new Pecahan(Integer.valueOf(c).intValue(),Integer.valueOf(d).intValue());
if (op.compareTo("+")==0)
{
System.out.println("\n" + pecahan1 + "+ "+ c +"/"+ d + " = " + pecahan1.tambah(pecahan2));
}
else if (op.compareTo("-")==0)
{
System.out.println("\n" + pecahan1 + "- "+ c +"/"+ d + " = " + pecahan1.kurang(pecahan2));
}
else if (op.compareTo("*")==0)
{
System.out.println("\n" + pecahan1 + "* "+ c +"/"+ d + " = " + pecahan1.kali(pecahan2));
}
else if (op.compareTo("/")==0)
{
System.out.println("\n" + pecahan1 + " / "+ c +"/"+ d + " = " + pecahan1.bagi(pecahan2));
}
else
{
System.out.println("\nMaaf, Operator yang anda masukkan salah");
}
}
}



Hasil Running:

Semoga Bermanfaat!!!

Tidak ada komentar:

Posting Komentar