Java class library (Java API) mempunyai berbagai kelas (Java predefined classes) yang diletakkan di paket (package) untuk sanggup dipergunakan kembali di program. Paket tersebut dipakai untuk mengelompokkan kelas-kelas yang mempunyai kemiripan fungsi (related class). Kelas-kelas Java yang akan dipakai di dalam program, terlebih dahulu harus diimpor beserta dengan nama paket di mana kelas tersebut berada, kecuali untuk kelas Java yang berada di paket java.lang menyerupai kelas JOptionPane yang berada di paket javax.swing dan kelas DecimalFormat yang berada di paket java.text. Berikut ini yakni daftar beberapa paket Java yang sering dipergunakan di kegiatan Java:
Paket | Keterangan |
---|---|
javax.swing | Paket ini berisi kelas-kelas dan interface untuk komponen GUI swing Java yang menyediakan sumbangan untuk tampilan grafis yang portabel. |
javax.swing.event | Paket ini berisi kelas-kelas dan interfes yang memperbolehkan penanganan event untuk komponent grafis yang terletak di paket javax.swing. |
java.lang | Paket ini berisi kelas-kelas dan interfes yang diharapkan oleh banyak kegiatan Java. Paket ini diimpor oleh kompiler ke semua kegiatan Java secara otomatis. |
java.applet | Paket ini berisi kelas-kelas Applet dan juga beberapa interfes yang memperbolehkan interaksi applet dan browser serta untuk memainkan klip audio. Kelas javax.swing.JApplet dipakai untuk tetapkan applet yang memakai komponen GUI swing. |
java.text | Paket ini berisi kelas-kelas dan interfes yang memperbolehkan kegiatan Java untuk memanipulasi angka, tanggal, aksara dan juga string. |
java.net | Paket ini berisi kelas yang memperbolehkan kegiatan untuk berkomunikasi melalui jaringan. |
Keuntungan memakai paket.
Ada kemungkinan, programer Java menciptakan kelas sendiri yang mempunyai nama sama dengan kelas yang sudah ada di Java API tanpa sengaja. Konflik penamaan kelas sanggup saja terjadi. Untuk mengatasi persoalan terkait penamaan kelas, Anda sanggup meletakkan kelas yang mempunyai nama sama ke dalam paket berbeda dan mengakses kelas tersebut beserta dengan nama paketnya. Kelas-kelas Java yang mempunyai kemiripan fungsi seharusnya diletakkan di paket yang sama sehingga akan mempermudah penempatan dan pendistribusian. Paket juga berfungsi memberi perlindungan pada kelas dan interface yang ada di dalamnya. Sebagai contoh, kelas yang dideklarasikan dengan kata kunci private, hanya sanggup diakses oleh kelas-kelas lain yang berada dalam paket yang sama.
Direktori paket.
Sebuah paket bahwasanya yakni direktori yang dipakai untuk menyimpan file-file bytecode (file berekstensi .class). Paket Java disusun secara berjenjang (hierarchical). Anda sanggup mempunyai paket yang berada di dalam paket lain. Sebagai contoh, javax.swing.JOptionPane memperlihatkan bahwa kelas JOptionPane berada di paket swing dan paket swing sendiri berada di paket javax. Level jenjang paket dipakai untuk memastikan keunikan dari nama paket.
Semua kelas yang dibentuk akan tersimpan di direktori yang kini aktif (current directory atau default package) ketika kegiatan sumber Java dikompilasi. Karena kegiatan sumber Java terletak di direktori, contohnya c:\hindro\javasc dan proses kompilasi juga dilakukan di direktori tersebut, maka file bytecode hasil kompilasi juga akan tersimpan di direktori yang sama.
Meletakkan kelas ke dalam paket.
Setiap kelas Java akan diletakkan (dikelompokkan) ke dalam paket. Kelas-kelas tersebut diletakkan ke dalam paket ketika kegiatan sumber Java (Java source program) dikompilasi. Untuk meletakkan sebuah kelas hasil kompilasi ke dalam paket yang dituju, Anda sanggup menyertakan pernyataan package diikuti nama paket di kegiatan sumber Java. Pernyataan package yang diikuti nama peket yakni pernyataan Java yang paling pertama. Berikut ini yakni sintak pernyataan package untuk meletakkan hasil kompilasi ke dalam paket:
package nama-paket;
Untuk mendemonstrasikan penggunaan pernyataan package di atas, terlebih dahulu Anda sanggup menciptakan direktori baru. Misalnya c:\filejava\javaapp\kelas\bangun\datar yakni direktori yang dipakai untuk menyimpan file bytecode Java (berekstensi .class). Dari direktori daerah menyimpan kelas, Anda sanggup menentukan c:\filejava\javaapp\kelas sebagai class path dan bangun\datar sebagai nama paket (package name). Agar Java mengetahui letak kelas yang sudah dibentuk di dalam sistem file (file system), Anda perlu memodifikasi nilai variabel CLASSPATH di kotak dialok Edit System Variable.
Modifikasi nilai variabel CLASSPATH dilakukan dengan menambahkan ;c:\filejava\javaapp\kelas ke nilai yang sudah ada di variabel CLASSPATH. Untuk menambahkan beberapa path lain ke dalam nilai variabel CLASSPATH, Anda harus memperlihatkan pemisah berupa titik koma. Umumnya, variabel CLASSPATH sudah terisi dengan dot (.) yang mengacu ke direktori yang sedang aktif (current directory) atau lokasi dari pustaka kelas Java. Berikut ini yakni kotak dialok Edit System Variable dari variabel CLASSPATH:
Contoh kegiatan berikut ini berkaitan dengan bangkit datar segitiga sama sisi. Rumus keliling segitiga sama sisi ABC yakni sisi AB + sisi BC + sisi CA dan rumus luasnya yakni ½ x bantalan x tinggi. Kelas bangkit datar segitiga sama sisi ini dinamakan Segi3ABC dan mempunyai dua metoda untuk mencari keliling dan luas. Kelas Segi3ABC akan diletakkan ke dalam paket bangun\datar. Berikut ini yakni isyarat programnya:
// Meletakkan kelas ke paket
package
bangun.datar;
// Mendefinisikan kelas Segi3ABC
public
class
Segi3ABC {
// Metoda hitungKeliling
// Untuk mencari keliling segi tiga
public
static
double
hitungKeliling(
double
sisiAB,
double
sisiBC,
double
sisiCA) {
double
keliling;
keliling = sisiAB + sisiBC + sisiCA;
return
keliling;
}
// Metoda hitungLuas
// Untuk mencari luas segi tiga
public
static
double
hitungLuas(
double
sisiAB) {
// Deklarasi variabel
double
luas;
// Mencari tinggi segi tiga
double
tinggi = Math.sqrt(Math.pow(sisiAB,
2
) - Math.pow((
0.5
* sisiAB),
2
));
// Mencari luas segi tiga
luas = sisiAB * tinggi;
return
luas;
}
}
Kelas Segi 3 ABC tidak mempunyai metoda main dikarenakan kelas ini akan dipakai di kegiatan lain yang mempunyai metoda main. Dari isyarat kegiatan di atas, baris nomor 2 yakni pernyataan package yang diikuti oleh nama paket bangun.datar. Pernyataan package di kegiatan sumber Java (Segi3ABC.java) dipakai untuk meletakkan file bytecode hasil kompilasi (Segi3ABC.class) ke dalam paket yang sudah ditentukan di pernyataan package.
Baris nomor 24 yakni pernyataan untuk mencari tinggi segitiga sama sisi. Anda sanggup memakai rumus phytagoras untuk mengetahui tinggi dari segitiga sama sisi. Rumus phytagoras mencakup pencarian akar (√x) dan pemangkatan (x2) dari variabel x. Untuk mencari nilai akar dan pemangkatan, sanggup memakai metoda statik sqrt dan pow dari kelas Math yang ada di paket java.lang. Math.sqrt(x) sama artinya dengan √x dan Math.pow(x, y) sama artinya dengan xy. Selain metoda sqrt dan pow, kelas Math juga berisi metoda lain untuk melaksanakan fungsi matematika dasar serta metoda random (Math.random) yang sanggup menghasilkan nilai random double lebih besar atau sama dengan 0.0 dan lebih kecil dari 1.0 (0 <= Math.random() < 1.0).
Ada dua cara untuk mengkompilasi kegiatan sumber Java semoga file berekstensi .class hasil dari kompilasi sanggup diletakkan di paket yang sudah ditentukan sebagaimana di dalam pernyataan package. Cara pertama, Anda harus menyimpan file kegiatan sumber (file berekstensi .java) di direktori c:\filejava\javaapp\kelas\bangun\datar. Sebelum proses kompilasi dilakukan, Anda terlebih dahulu harus berada di direktori dimana paket bangun\datar berada. Cara kedua, Anda sanggup mengkompilasi kegiatan sumber Java yang terletak di sebuah direktori dan meletakkan hasil kompilasi di direktori (paket) tertentu melalui c prompt (c:\>).
Untuk memakai cara yang pertama, file kegiatan sumber Java (Segi3ABC.java) harus disimpan di folder atau direktori c:\filejava\javaapp\kelas\bangun\datar. Karena di kegiatan sumber tersebut sudah terdapat pernyataan package bangun.datar, sebelum dikompilasi, Anda cukup berada di direktori c:\filejava\javaapp\kelas. Kompilasi sanggup dilakukan dengan menuliskan perintah menyerupai di bawah ini di baris perintah pada jendela Command Prompt. javac bangun\datar\Segi3ABC.java
Setelah proses kompilasi selesai, Anda harus pastikan bahwa file bytecode yang berekstensi .class (Segi3ABC.class) sudah berada di direktori c:\filejava\javaapp\kelas\bangun\datar. Kompiler Java sanggup mengetahui daerah untuk meletakkan file hasil kompilasi dengan mengkombinasikan classpath c:\filejava\javaapp\kelas dengan nama paket bangun.datar.
Umumnya, programer Java menentukan untuk meletakkan file kegiatan sumber (berekstensi .java) dan file hasil kompilasi (berekstensi .class) di direktori berbeda. Hal ini dimaksudkan untuk mempermudah proses pendistribusian paket yang hanya berisi kelas-kelas hasil kompilasi. Anda juga sanggup mengelola file dengan cara demikian. Misalnya, Anda menciptakan direktori c:\filejava\javaapp\sumber\bangun\datar sebagai daerah menyimpan file kegiatan sumber, sedangkan daerah untuk menyimpan file hasil kompilasi, Anda sanggup memakai direktori c:\filejava\javaapp\kelas\bangun\datar. Untuk mengkompilasi file kegiatan sumber melalui c prompt (c:\>), Anda sanggup menuliskan perintah menyerupai di bawah ini.
c:\>javac –d filejava\javaapp\kelas filejava\javaapp\sumber\bangun\datar\Segi3ABC.java
-d memberitahukan kepada kompiler Java untuk meletakkan file kelas hasil mengkompilasi (Segi3ABC.class) ke direktori c:\filejava\javaapp\kelas\bangun\datar. Setelah kompilasi file sumber selesai dilakukan dan tidak terdapat kesalahan, Anda sanggup memastikan bahwa file hasil kompilasi sudah berada di direktori c:\filejava\javaapp\kelas\bangun\datar.
Kelas Segi3ABC yang tersimpan di direktori c:\filejava\javaapp\kelas\bangun\datar sanggup dipanggil dengan memakai pernyataan import sebagaimana kelas-kelas Java lain. Contoh kegiatan berikut ini akan memakai kelas Segi3ABC yang sudah didefinisikan sebelumnya untuk menghitung keliling dan luas segitiga sama sisi. Segitiga sama sisi mempunyai panjang sisi yang sama yaitu 9 cm. Berikut ini yakni isyarat program, klarifikasi dan hasil sanksi program:
// Nama file : SegitigaSamaSisi.java
// Menghitung keliling dan luas segitiga
// Mengimpor kelas
import
javax.swing.JOptionPane;
import
java.text.DecimalFormat;
import
bangun.datar.Segi3ABC;
// Deklarasi kelas
public
class
SegitigaSamaSisi {
// Metoda main
public
static
void
main(String[] args) {
// Deklarasi variable
double
keliling;
double
luas;
double
sisi =
9
;
String hasil=
""
;
DecimalFormat formatAngka;
// Membuat objek dari kelas DecimalFormat
formatAngka =
new
DecimalFormat(
"0.00"
);
hasil +=
"Segitiga Sama Sisi\n\nPanjang sisi : "
+ sisi +
"\n\n"
;
keliling = Segi3ABC.hitungKeliling(
9
,
9
,
9
);
hasil +=
"Keliling Segitiga ABC : "
+ formatAngka.format(keliling) +
"\n"
;
luas = Segi3ABC.hitungLuas(
9
);
hasil +=
"Luas Segitiga ABC : "
+ formatAngka.format(luas) +
"\n"
;
JOptionPane.showMessageDialog(
null
, hasil,
"Menghitung Keliling dan Luas"
,
JOptionPane.INFORMATION_MESSAGE);
// Mengakhiri aplikasi berpenampilan GUI
System.exit(
0
);
}
}
Baris nomor 7 yakni pernyataan untuk mengimpor kelas Segi3ABC yeng terletak di paket bangun.datar. Kelas Segi3ABC merupakan kelas yang didefinisikan oleh pengguna aplikasi (user-defined class) dan bukan termasuk ke dalam Java predefined class yang terletak di pustaka kelas Java. Baris nomor 27 yakni pernyataan pemberian (assigment statement). Di dalam pernyataan ini, metoda hitungKeliling kelas Segi3ABC yang berada di paket bangun.datar dipanggil. Metoda hitungKeliling akan mengembalikan nilai keliling segitiga dengan tipe data double untuk diberikan atau disimpan ke variabel keliling.
Baris nomor 30 yakni juga pernyataan pemberian nilai. Di dalam pernyataan pemberian nilai ini, metoda hitungLuas kelas Segi3ABC yang tersimpan di paket bangun.datar dipanggil. Metoda hitungLuas akan mengembalikan nilai luas segitiga dengan tipe data double untuk disimpan di variabel luas. Baris nomor 33 yakni pernyataan untuk menampilkan hasil mencari keliling dan luas dengan memakai metoda hitungKeliling dan hitungLuas kelas Segi3ABC.
Semoga Bermanfaat ..
#RPLWajibNgulik #gakngulikNyesel
Source : http://www.termasmedia.com/