Latest web development tutorials

paket Java (paket)

Dalam rangka untuk lebih mengatur kelas, Java menyediakan mekanisme paket untuk perbedaan antara nama kelas dari namespace.

Peran paket

  • Sebuah sama atau terkait fungsi organisasi dari kelas atau interface dalam paket yang sama, untuk menemukan dan mudah untuk menggunakan kelas.
  • 2 sebagai folder yang sama, paket juga menggunakan pohon direktori penyimpanan. Kelas dalam nama paket yang sama berbeda, nama paket yang berbeda dari kelas yang sama, sementara secara bersamaan memanggil dua jenis paket dalam nama kelas yang sama, nama paket harus ditambahkan perbedaan. Dengan demikian, nama paket untuk menghindari konflik.
  • 3 paket juga mendefinisikan hak akses, kelas memiliki akses ke paket untuk mengakses paket kelas.

Java menggunakan paket (paket) Mekanisme ini dirancang untuk mencegah konflik penamaan, kontrol akses, menyediakan pencarian dan menemukan kelas (kelas), antarmuka, mantri (mantri) dan komentar (penjelasan) dan sejenisnya.

Paket sintaks pernyataan adalah:

package pkg1[.pkg2[.pkg3…]];

Sebagai contoh, sebuah file Something.java isinya

package net.java.util
public class Something{
   ...
}

Maka harus jalan net / java / util / Something.java jadi disimpan. paket (paket) berperan untuk mengklasifikasikan program java yang berbeda disimpan lebih mudah dipanggil oleh program java lainnya.

Sebuah paket (paket) dapat didefinisikan sebagai satu set jenis (kelas, interface, mantri, dan anotasi) saling berhubungan untuk memberikan perlindungan akses dan fungsi manajemen namespace untuk jenis.

Berikut adalah beberapa Jawa dalam paket:

  • java.lang- kelas dasar dikemas
  • Fungsi Java.io- berisi fungsi input dan output

Pengembang dapat menempatkan mereka sendiri dari kelas dan interface, dikemas, dan menentukan paket Anda sendiri. Dan dalam pengembangan yang sebenarnya adalah untuk didorong untuk melakukannya, ketika Anda menyelesaikan pelaksanaan kelas, pengelompokan kelas terkait, sehingga programmer lain dapat lebih mudah menentukan kelas, interface, mantri, dan komentar yang terkait .

Sejak paket menciptakan namespace baru (namespace), sehingga tanpa menyebut konflik dengan nama paket lainnya. Menggunakan mekanisme paket ini, lebih mudah untuk menerapkan kontrol akses, dan membiarkan menemukan kelas yang relevan lebih mudah.


membuat paket

Membuat paket, Anda perlu mengambil nama yang sesuai untuk paket ini. Kemudian, jika sumber file yang berisi kelas-kelas lain yang ditawarkan ini paket, interface, anotasi atau enum jenis, paket deklarasi ini harus ditempatkan pada awal file sumber ini.

Paket harus dinyatakan di baris pertama dari file sumber untuk setiap file sumber hanya dapat memiliki satu pernyataan paket, file untuk setiap jenis yang diterapkan untuk itu.

Jika Anda tidak menggunakan pernyataan paket di file sumber, maka salah satu kelas, fungsi, pencacahan, komentar, dll akan ditempatkan dalam sebuah paket yang tidak disebutkan namanya (paket yang tidak disebutkan namanya) di.

contoh

Mari kita lihat contoh yang menciptakan sebuah paket bernama binatang. Umumnya menggunakan huruf kecil untuk menghindari kelas penamaan, interface, dan nama konflik.

Bergabung paket antarmuka hewan (interface):

/* 文件名: Animal.java */
package animals;

interface Animal {
   public void eat();
   public void travel();
}

Selanjutnya, tambahkan dalam paket yang sama yang mengimplementasikan antarmuka:

package animals;

/* 文件名 : 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();
   }
} 

Kemudian, kompilasi kedua file dan menempatkan mereka dalam subdirektori bernama hewan. Gunakan perintah berikut untuk menjalankan:

$ mkdir animals
$ cp Animal.class  MammalInt.class animals
$ java animals/MammalInt
Mammal eats
Mammal travel

kata kunci impor

Untuk dapat menggunakan anggota dari sebuah paket, kita perlu secara eksplisit mengimpor paket dalam program Java. Menggunakan "impor" pernyataan untuk melakukan fungsi ini.

Dalam java pernyataan impor file sumber harus terletak setelah pernyataan paket, semua kelas yang ditetapkan sebelumnya, Anda tidak bisa, Anda juga dapat memiliki beberapa, sintaks adalah:

import package1[.package2…].(classname|*);

Jika paket, kelas yang ingin Anda gunakan paket ini di kelas lain, maka nama paket dapat dihilangkan.

contoh

Paket gaji berikut sudah berisi kelas karyawan, kemudian tambahkan kelas untuk paket gaji Boss. Ketika Boss Karyawan kelas referensi kelas tidak dapat menggunakan contoh penggajian prefix kelas Boss berikut.

package payroll;

public class Boss
{
   public void payEmployee(Employee e)
   {
      e.mailCheck();
   }
}

Bagaimana jika kelas tidak Boss paket gaji akan? kelas bos harus menggunakan salah satu metode berikut untuk referensi kelas-kelas lain dalam paket

Gunakan nama lengkap dari deskripsi kelas, seperti:

payroll.Employee

Dengan diperkenalkannya kata kunci impor, menggunakan wildcard "*"

import payroll.*;

Menggunakan kata kunci impor memperkenalkan Kuliah Karyawan

import payroll.Employee;

Catatan:

file kelas dapat berisi sejumlah deklarasi impor. impor deklarasi harus setelah pernyataan paket, sebelum deklarasi kelas.


struktur direktori paket

Kelas pada paket memiliki dua hasil utama:

  • nama paket menjadi bagian dari nama kelas, seperti yang kita bahas sebelumnya.
  • nama paket harus sesuai dengan kode byte yang sesuai dalam pertandingan struktur direktori yang sama.

Berikut adalah cara sederhana untuk mengelola file Anda di java:

Kelas, interface, dan jenis lain dari kode sumber dalam teks, nama file ini adalah nama jenis, dan ekstensi java. Sebagai contoh:

// 文件名 :  Car.java

package vehicle;

public class Car {
   // 类实现  
}

Selanjutnya, sumber file dalam sebuah direktori, nama direktori ke kelas yang sesuai dari paket sendiri.

....\vehicle\Car.java

Sekarang, nama kelas yang benar dan jalan akan terlihat seperti berikut:

  • nama kelas -> vehicle.Car

  • Path -> kendaraan \ Car.java (di windows)

Biasanya, perusahaan menggunakan bentuk terbalik atas nama domain Internet sebagai nama paket, misalnya: domain Internet apple.com, semua nama paket yang di awal com.apple. Setiap nama paket sesuai dengan bagian dari subdirektori.

Sebagai contoh: Perusahaan ini memiliki com.apple.computers paket, yang berisi file sumber Dell.java dikenal, yang sesuai harus seperti seri berikut subdirektori:

....\com\apple\computers\Dell.java

Waktu kompilasi, compiler membuat file output yang berbeda, nama file output adalah nama jenis ini didefinisikan dalam jenis paket masing-masing kelas, antarmuka, dan ditambahkan sebagai ekstensi .class akhiran. Sebagai contoh:

// 文件名: Dell.java

package com.apple.computers;
public class Dell{
      
}
class Ups{
      
}

Sekarang, kita menggunakan opsi -d untuk mengkompilasi file, sebagai berikut:

$javac -d . Dell.java

Ini akan menempatkan seperti ini untuk mengkompilasi file:

.\com\apple\computers\Dell.class.\com\apple\computers\Ups.class

Anda bisa seperti ini untuk mengimpor semua \ com \ apel \ komputer \ kelas didefinisikan dalam antarmuka:

import com.apple.computers.*;

.class file disusun setelah dan harus .java file sumber, mereka ditempatkan di direktori harus sesuai dengan nama paket. Namun, jalan tidak memerlukan file kelas dengan jalur yang sesuai .java yang sama. Anda dapat mengatur sumber dan kelas direktori terpisah.

<path-one>\sources\com\apple\computers\Dell.java
<path-two>\classes\com\apple\computers\Dell.class

Dengan cara ini, Anda dapat berbagi direktori kelas Anda untuk programmer lain, daripada mengungkapkan sumber mereka. Dengan cara ini mengelola sumber dan file kelas dapat membiarkan compiler dan mesin virtual java (JVM) Anda dapat menemukan semua jenis yang digunakan dalam program ini.

Absolute jalur direktori kelas yang disebut kelas jalan. Diatur dalam sistem variabel CLASSPATH. Compiler dan java mesin virtual dengan nama paket untuk kelas jalan kemudian path konstruksi .class berkas.

<Path- dua> \ kelas adalah kelas jalan, nama paket adalah com.apple.computers, dan compiler dan JVM akan di <path-dua> \ kelas \ com \ apel \ compters menemukan file .class.

Sebuah jalur kelas mungkin berisi beberapa jalur. Multi-jalan harus dipisahkan oleh pembatas. Secara default, compiler dan JVM menemukan direktori saat ini. file JAR yang berisi platform Java, menurut kelas yang relevan, sehingga mereka default pada direktori di jalur kelas.


Pengaturan variabel sistem CLASSPATH

Gunakan perintah berikut untuk menampilkan variabel CLASSPATH saat ini:

  • platform windows (DOS command line) -> C: \> set CLASSPATH
  • platform UNIX (Bourne shell bawah) ->% echo $ CLASSPATH
Lepaskan CLASSPATH saat konten variabel:
  • platform windows (DOS command line) -> C: \> set CLASSPATH =
  • platform UNIX (Bourne shell bawah) ->% CLASSPATH diset; CLASSPATH ekspor

Pengaturan variabel CLASSPATH:

  • platform windows (DOS command line) -> set CLASSPATH = C: \ pengguna \ jack \ java \ kelas
  • platform UNIX (Bourne shell bawah) ->% CLASSPATH = / home / jack / java / kelas; CLASSPATH ekspor