java
Paket digunakan di Java untuk mencegah konflik penamaan, untuk mengontrol akses, untuk mempermudah pencarian/penempatan dan penggunaan kelas, antarmuka, enumerasi dan anotasi, dll.
Paket dapat didefinisikan sebagai pengelompokan jenis terkait (kelas, antarmuka, enumerasi, dan anotasi) yang menyediakan perlindungan akses dan manajemen namespace.
Beberapa paket yang ada di Java adalah −
java.lang menggabungkan kelas dasar
java.io kelas untuk input , fungsi output dibundel dalam paket ini
Pemrogram dapat menentukan paket mereka sendiri untuk menggabungkan grup kelas/antarmuka, dll. Merupakan praktik yang baik untuk mengelompokkan kelas terkait yang diimplementasikan oleh Anda sehingga programmer dapat dengan mudah menentukan bahwa kelas, antarmuka, enumerasi, dan anotasi saling terkait.
Karena paket membuat namespace baru, tidak akan ada konflik nama dengan nama di paket lain. Menggunakan paket, lebih mudah untuk menyediakan kontrol akses dan juga lebih mudah untuk menemukan kelas terkait.
Saat membuat paket, Anda harus memilih nama untuk paket dan menyertakan paket pernyataan bersama dengan nama itu di bagian atas setiap file sumber yang berisi kelas, antarmuka, enumerasi, dan jenis anotasi yang ingin Anda sertakan dalam paket.
Pernyataan paket harus menjadi baris pertama dalam file sumber. Hanya ada satu pernyataan paket di setiap file sumber, dan itu berlaku untuk semua jenis file.
Jika pernyataan paket tidak digunakan maka kelas, antarmuka, enumerasi, dan jenis anotasi akan ditempatkan dalam paket default saat ini.
Untuk mengkompilasi program Java dengan pernyataan paket, Anda harus menggunakan opsi -d seperti yang ditunjukkan di bawah ini.
javac -d Destination_folder file_name.java
Kemudian folder dengan nama paket yang diberikan dibuat di tujuan yang ditentukan, dan file kelas yang dikompilasi akan ditempatkan di folder itu.
Mari kita lihat contoh yang membuat paket bernama hewan . Ini adalah praktik yang baik untuk menggunakan nama paket dengan huruf kecil untuk menghindari konflik dengan nama kelas dan antarmuka.
Contoh paket berikut berisi antarmuka bernama hewan
/* File name : Animal.java */ package animals; interface Animal { public void eat(); public void travel(); }
Sekarang, mari kita implementasikan antarmuka di atas dalam paket yang sama hewan
package animals; /* File name : MammalInt.java */ public class MammalInt implements Animal { public void eat() { System.out.println("Mammal eats"); } public void travel() { System.out.println("Mammal travels"); } public int noOfLegs() { return 0; } public static void main(String args[]) { MammalInt m = new MammalInt(); m.eat(); m.travel(); } }
Sekarang kompilasi file java seperti yang ditunjukkan di bawah ini
$ javac -d . Animal.java $ javac -d . MammalInt.java
Sekarang paket/folder dengan nama hewan akan dibuat di direktori saat ini dan file kelas ini akan ditempatkan di dalamnya seperti yang ditunjukkan di bawah ini.
Anda dapat mengeksekusi file kelas di dalam paket dan mendapatkan hasilnya seperti yang ditunjukkan di bawah ini.
Mammal eats Mammal travels
Jika suatu kelas ingin menggunakan kelas lain dalam paket yang sama, nama paket tidak perlu digunakan. Kelas dalam paket yang sama menemukan satu sama lain tanpa sintaks khusus.
Di sini, kelas bernama Boss ditambahkan ke paket penggajian yang sudah berisi Karyawan. Bos kemudian dapat merujuk ke kelas Karyawan tanpa menggunakan awalan penggajian, seperti yang ditunjukkan oleh kelas Bos berikut.
package payroll; public class Boss { public void payEmployee(Employee e) { e.mailCheck(); } }
Apa yang terjadi jika kelas Karyawan tidak ada dalam paket penggajian? Kelas Boss kemudian harus menggunakan salah satu teknik berikut untuk merujuk ke kelas dalam paket yang berbeda.
payroll.Employee
Paket dapat diimpor menggunakan kata kunci import dan wild card (*). Misalnya
import payroll.*;
import payroll.Employee;
Catatan Sebuah file kelas dapat berisi sejumlah pernyataan impor. Pernyataan impor harus muncul setelah pernyataan paket dan sebelum deklarasi kelas.
Dua hasil utama terjadi ketika sebuah kelas ditempatkan dalam sebuah paket
Nama paket menjadi bagian dari nama kelas, seperti yang baru saja kita bahas di bagian sebelumnya.
Nama paket harus sesuai dengan struktur direktori tempat bytecode yang bersangkutan berada.
Berikut adalah cara sederhana untuk mengelola file Anda di Java −
Letakkan kode sumber untuk kelas, antarmuka, enumerasi, atau jenis anotasi dalam file teks yang namanya adalah nama sederhana dari jenis tersebut dan yang ekstensinya .java .
Misalnya
// File Name : Car.java package vehicle; public class Car { // Class implementation. }
Sekarang, letakkan file sumber di direktori yang namanya mencerminkan nama paket tempat kelas tersebut berada −
....\vehicle\Car.java
Sekarang, nama kelas dan nama path yang memenuhi syarat adalah sebagai berikut −
Secara umum, perusahaan menggunakan nama domain Internet terbalik untuk nama paketnya.
Contoh Nama domain Internet perusahaan adalah apple.com, maka semua nama paketnya akan dimulai dengan com.apple. Setiap komponen nama paket sesuai dengan subdirektori.
Contoh Perusahaan memiliki paket com.apple.computers yang berisi file sumber Dell.java, itu akan dimuat dalam serangkaian subdirektori seperti ini
....\com\apple\computers\Dell.java
Pada saat kompilasi, kompiler membuat file output yang berbeda untuk setiap kelas, antarmuka, dan enumerasi yang ditentukan di dalamnya. Nama dasar dari file keluaran adalah nama tipenya, dan ekstensinya adalah .class .
Misalnya
// File Name: Dell.java package com.apple.computers; public class Dell { } class Ups { }
Sekarang, kompilasi file ini sebagai berikut menggunakan opsi -d
$javac -d . Dell.java
File akan dikompilasi sebagai berikut
.\com\apple\computers\Dell.class .\com\apple\computers\Ups.class
Anda dapat mengimpor semua kelas atau antarmuka yang ditentukan di \com\apple\computers\ sebagai berikut
import com.apple.computers.*;
Seperti file sumber .java, file .class yang dikompilasi harus berada dalam serangkaian direktori yang mencerminkan nama paket. Namun, jalur ke file .class tidak harus sama dengan jalur ke file sumber .java. Anda dapat mengatur direktori sumber dan kelas secara terpisah, seperti −
<path-one>\sources\com\apple\computers\Dell.java <path-two>\classes\com\apple\computers\Dell.class
Dengan melakukan ini, dimungkinkan untuk memberikan akses ke direktori kelas ke pemrogram lain tanpa mengungkapkan sumber Anda. Anda juga perlu mengelola file sumber dan kelas dengan cara ini sehingga kompiler dan Java Virtual Machine (JVM) dapat menemukan semua jenis yang digunakan program Anda.
Jalur lengkap ke direktori kelas,
Katakanlah
Jalur kelas dapat mencakup beberapa jalur. Beberapa jalur harus dipisahkan dengan titik koma (Windows) atau titik dua (Unix). Secara default, kompiler dan JVM mencari direktori saat ini dan file JAR yang berisi kelas platform Java sehingga direktori ini secara otomatis berada di jalur kelas.
Untuk menampilkan variabel CLASSPATH saat ini, gunakan perintah berikut di Windows dan UNIX (Bourne shell)
Untuk menghapus konten variabel CLASSPATH saat ini, gunakan −
Untuk menyetel variabel CLASSPATH
java
Kelas Java PrintStream Dalam tutorial ini, kita akan belajar tentang kelas Java PrintStream dan metode print() dan printf() dengan bantuan contoh. PrintStream kelas java.io package dapat digunakan untuk menulis data keluaran dalam bentuk (teks) yang dapat dibaca secara umum alih-alih byte. Ini mem
Kelas Pembaca Java Dalam tutorial ini, kita akan belajar tentang Java Reader, subclass-nya dan metodenya dengan bantuan sebuah contoh. Reader kelas java.io package adalah superclass abstrak yang mewakili aliran karakter. Sejak Reader adalah kelas abstrak, itu tidak berguna dengan sendirinya. Namun
Apa itu Paket di Java? PAKET di Jawa adalah kumpulan kelas, sub-paket, dan antarmuka. Ini membantu mengatur kelas Anda ke dalam struktur folder dan membuatnya mudah untuk menemukan dan menggunakannya. Lebih penting lagi, ini membantu meningkatkan penggunaan kembali kode. Setiap paket di Java memil
Paket digunakan di Java untuk mencegah konflik penamaan, untuk mengontrol akses, untuk mempermudah pencarian/penempatan dan penggunaan kelas, antarmuka, enumerasi dan anotasi, dll. Paket dapat didefinisikan sebagai pengelompokan jenis terkait (kelas, antarmuka, enumerasi, dan anotasi) yang menyedia