Gói trong Java: Cách tạo / nhập gói

Mục lục:

Anonim

Gói trong Java là gì?

PACKAGE trong Java là một tập hợp các lớp, gói con và giao diện. Nó giúp tổ chức các lớp của bạn thành một cấu trúc thư mục và giúp bạn dễ dàng định vị và sử dụng chúng. Quan trọng hơn, nó giúp cải thiện khả năng tái sử dụng mã.

Mỗi gói trong Java có tên duy nhất và tổ chức các lớp và giao diện của nó thành một không gian tên hoặc nhóm tên riêng biệt.

Mặc dù các giao diện và lớp có cùng tên không thể xuất hiện trong cùng một gói, nhưng chúng có thể xuất hiện trong các gói khác nhau. Điều này có thể thực hiện được bằng cách gán một không gian tên riêng cho mỗi gói Java.

Cú pháp: -

package nameOfPackage;

Video sau đây sẽ hướng dẫn bạn các bước tạo một gói.

Bấm vào đây nếu video không thể truy cập được

Hãy nghiên cứu gói với một ví dụ. Chúng tôi xác định một lớp và đối tượng và sau đó biên dịch nó trong gói p1 của chúng tôi. Sau khi biên dịch, chúng tôi thực thi mã dưới dạng một gói java.

Làm thế nào để tạo một gói?

Tạo một gói là một công việc đơn giản như sau

  • Chọn tên của gói
  • Bao gồm lệnh gói dưới dạng dòng mã đầu tiên trong Tệp nguồn Java của bạn.
  • Tệp Nguồn chứa các lớp, giao diện, v.v. bạn muốn đưa vào gói
  • Biên dịch để tạo các gói Java

Bước 1) Xem xét chương trình gói sau trong Java:

package p1;class c1(){public void m1(){System.out.println("m1 of c1");}public static void main(string args[]){c1 obj = new c1();obj.m1();}}

Đây,

  1. Để đặt một lớp vào một gói, tại dòng mã đầu tiên, hãy xác định gói p1
  2. Tạo một lớp c1
  3. Định nghĩa một phương thức m1 in ra một dòng.
  4. Xác định phương pháp chính
  5. Tạo một đối tượng của lớp c1
  6. Phương thức gọi m1

Bước 2) Trong bước tiếp theo, lưu tệp này dưới dạng demo.java

Bước 3) Trong bước này, chúng tôi biên dịch tệp.

Việc biên dịch đã hoàn thành. Một tệp lớp c1 được tạo. Tuy nhiên, không có gói nào được tạo? Bước tiếp theo có giải pháp

Bước 4) Bây giờ chúng ta phải tạo một gói, sử dụng lệnh

javac -d . demo.java

Lệnh này buộc trình biên dịch tạo một gói.

Dấu "." toán tử đại diện cho thư mục làm việc hiện tại.

Bước 5) Khi bạn thực thi mã, nó sẽ tạo ra một gói p1. Khi bạn mở gói java p1 bên trong, bạn sẽ thấy tệp c1.class.

Bước 6) Biên dịch cùng một tệp bằng mã sau

javac -d… demo.java

Ở đây "…" chỉ ra thư mục mẹ. Trong trường hợp của chúng tôi, tệp sẽ được lưu trong thư mục mẹ là Ổ C

Tệp được lưu trong thư mục mẹ khi mã trên được thực thi.

Bước 7) Bây giờ, giả sử bạn muốn tạo một gói phụ p2 trong gói p1 java hiện có của chúng tôi. Sau đó, chúng tôi sẽ sửa đổi mã của mình thành

package p1.p2;class c1{public void m1() {System.out.println("m1 of c1");}}

Bước 8) Biên dịch tệp

Như đã thấy trong ảnh chụp màn hình bên dưới, nó tạo ra một gói con p2 có lớp c1 bên trong gói.

Bước 9) Để thực thi mã, hãy đề cập đến tên đủ điều kiện của lớp, tức là tên gói theo sau là tên gói con, theo sau là tên lớp -

java p1.p2.c1

Đây là cách gói được thực thi và đưa ra kết quả là "m1 của c1" từ tệp mã.

Cách nhập gói

Để tạo một đối tượng của một lớp (được đóng gói trong một gói), trong mã của bạn, bạn phải sử dụng tên đủ điều kiện của nó.

Thí dụ:

java.awt.event.actionListner object = new java.awt.event.actionListner();

Tuy nhiên, có thể trở nên tẻ nhạt khi gõ tên đường dẫn gói được phân tách bằng dấu chấm dài cho mọi lớp bạn muốn sử dụng. Thay vào đó, bạn nên sử dụng câu lệnh nhập.

Cú pháp

import packageName; 

Sau khi được nhập, bạn có thể sử dụng lớp mà không cần đề cập đến tên đủ điều kiện của nó.

import java.awt.event.*; // * signifies all classes in this package are importedimport javax.swing.JFrame // here only the JFrame class is imported//UsageJFrame f = new JFrame; // without fully qualified name.

Ví dụ : Để nhập gói

Bước 1) Sao chép mã vào trình chỉnh sửa.

package p3;import p1.*; //imports classes only in package p1 and NOT in the sub-package p2class c3{public void m3(){System.out.println("Method m3 of Class c3");}public static void main(String args[]){c1 obj1 = new c1();obj1.m1();}}

Bước 2) Lưu tệp dưới dạng Demo2.java. Biên dịch tệp bằng lệnh javac -d. Demo2.java

Bước 3) Thực thi mã bằng lệnh java p3.c3

Các gói - những điểm cần lưu ý:

  • Để tránh xung đột đặt tên, các gói được cung cấp tên miền ngược lại của công ty Ví dụ: com.guru99. com.microsoft, com.infosys, v.v.
  • Khi tên gói không được chỉ định, một lớp nằm trong gói mặc định (thư mục làm việc hiện tại) và bản thân gói không có tên. Do đó bạn đã có thể thực hiện các nhiệm vụ sớm hơn.
  • Trong khi tạo một gói, cần lưu ý rằng câu lệnh tạo gói phải được viết trước bất kỳ câu lệnh nhập nào khác
// not allowedimport package p1.*;package p3;//correct syntaxpackage p3;import package p1.*;

gói java.lang được nhập theo mặc định cho bất kỳ lớp nào bạn tạo trong Java.

Java API rất rộng, chứa các lớp có thể thực hiện hầu hết các tác vụ lập trình của bạn ngay từ Thao tác cấu trúc dữ liệu đến Kết nối mạng. Thường xuyên hơn không, bạn sẽ sử dụng các tệp API trong mã của mình. Bạn có thể xem tài liệu API tại đây.