Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Java - Paket

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 −

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.

Membuat Paket

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.

Contoh

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

Impor Kata Kunci

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.

Contoh

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

Struktur Direktori Paket

Dua hasil utama terjadi ketika sebuah kelas ditempatkan dalam sebuah paket

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, \classes, disebut jalur kelas, dan disetel dengan variabel sistem CLASSPATH. Baik kompiler maupun JVM membangun jalur ke file .class Anda dengan menambahkan nama paket ke jalur kelas.

Katakanlah \classes adalah class path, dan nama paketnya adalah com.apple.computers, maka compiler dan JVM akan mencari file .class di \classes\com\apple\computers.

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.

Menetapkan Variabel Sistem CLASSPATH

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

  1. Paket Python
  2. Kata kunci terakhir Java
  3. Instance Java dari Operator
  4. Kelas Statis Bersarang Java
  5. Kelas Anonim Java
  6. Kelas Tunggal Jawa
  7. Refleksi Jawa
  8. Kelas Java ObjectOutputStream
  9. Java Generik
  10. Kelas File Java