2011-10-23 32 views
21

Làm cách nào để nhập một lớp tôi đã viết trong một tệp khác? Tất cả các lớp học của tôi đều thuộc cùng một gói.Nhập một lớp tùy chỉnh trong Java

+0

Sự cố * thực tế * bạn đang gặp phải, vì bạn không phải nhập các lớp có cùng gói? –

Trả lời

36

Nếu tất cả các lớp học của bạn nằm trong cùng một gói, bạn không cần phải nhập chúng.

Đơn giản chỉ cần nhanh chóng các đối tượng như sau:

CustomObject myObject = new CustomObject();

0

Trước hết, tránh sử dụng gói mặc định.

Thứ hai, bạn không cần nhập lớp học; nó trong cùng một gói.

1

Tôi thấy hình ảnh và tất cả các lớp của bạn nằm trong cùng một gói. Vì vậy, bạn không phải nhập khẩu, bạn có thể tạo một cá thể mới mà không cần câu nhập.

0

Trong cùng một gói bạn không cần phải nhập khẩu các lớp.

Nếu không, nó rất dễ dàng. Trong Eclipse hoặc NetBeans chỉ cần viết lớp bạn muốn sử dụng và nhấn vào Ctrl + Không gian. IDE sẽ tự động nhập lớp.

Thông tin tổng quát:

Bạn có thể nhập một lớp học với từ khóa nhập khẩu sau khi thông tin gói:

Ví dụ:

package your_package; 


import anotherpackage.anotherclass; 

public class Your_Class { 
    ... 
    private Vector variable; 
    ... 
} 

Bạn có thể ví dụ lớp với:

Anotherclass foo = new Anotherclass(); 
15

Nhập bằng cách sử dụng từ khóa import:

import package.myclass; 

Nhưng kể từ đó là gói mặc định và cùng, bạn chỉ cần tạo một đối tượng mới như:

elf ob = new elf(); //Instance of elf class 
+0

Nó sẽ không quan trọng nếu nó không phải là gói mặc định - bạn không phải nhập các lớp có trong gói * cùng *. –

+0

@BrianRoach Tôi biết. Tất cả những gì bạn cần chỉ là một ví dụ. Tôi chỉ dọn dẹp nó cho anh ta. – Mob

0

Nếu lớp học của bạn đang trong cùng một gói, bạn sẽ không cần phải nhập khẩu. Để gọi phương thức từ lớp B trong lớp A, bạn nên sử dụng classB.methodName(arg)

0

Theo Oracle và Sun doc, một lớp có thể sử dụng tất cả các lớp từ gói riêng và tất cả các lớp công khai từ các gói khác. Bạn có thể truy cập các lớp công khai trong một gói khác theo hai cách.

  • Đầu tiên chỉ cần thêm tên gói đầy đủ vào trước mỗi tên lớp. Ví dụ:

    java.util.Date today = new java.util.Date();

  • Cách tiếp cận đơn giản hơn và phổ biến hơn là sử dụng câu lệnh nhập. Điểm của câu lệnh nhập khẩu là cung cấp cho bạn một cách viết tắt để tham khảo các lớp học trong gói. Một khi bạn sử dụng nhập khẩu, bạn không còn phải cung cấp cho các lớp tên đầy đủ của họ. Bạn có thể nhập một lớp cụ thể hoặc toàn bộ gói.Bạn đặt các câu lệnh nhập khẩu ở đầu tệp nguồn của bạn (nhưng bên dưới bất kỳ câu lệnh gói nào). Ví dụ, bạn có thể nhập tất cả các lớp trong gói java.util với câu lệnh Sau đó, bạn có thể sử dụng mà không cần tiền tố gói.

    nhập java.util. *;

    // Sử dụng lớp học trong mã của bạn theo cách này

    Ngày hôm nay = new Date();

Như bạn đã đề cập trong câu hỏi rằng lớp học của bạn dưới cùng một gói, bạn sẽ không gặp bất kỳ vấn đề nào, tốt hơn là chỉ nên sử dụng tên lớp.

Các vấn đề liên quan