2011-06-28 42 views
5

Tôi khá xanh với java (tôi lập trình bằng C/C++) và tôi vẫn chưa tìm ra cách làm việc này cùng nhau.cách sử dụng tệp .class với các tệp .java

Tôi không cố gắng yêu cầu bất kỳ ai làm bài tập về nhà, tôi chỉ nhầm lẫn về một số nội dung cơ bản của java. Tôi có một nhiệm vụ muốn tôi tạo ra một mê cung. Bài tập đi kèm với một số tệp đã được triển khai trước và về mặt lý thuyết. Thư mục cung cấp cho tôi một số tệp .java và một số tệp .class. Tôi đã mở các tệp .java và hầu hết trong số chúng là các giao diện không có mã thực, vì vậy tôi giả định rằng thịt của nó nằm trong các tệp .class này. Câu hỏi của tôi là, làm cách nào để giao tiếp với các tệp .class này? Tôi có cần phải làm một cái gì đó như nhập myClass; nếu tôi có một tập tin gọi là myClass.class?

Tôi đã thử nhập thư mục tệp mà các tệp này được chứa trong (thông qua Eclipse), nhưng có vẻ như tệp .class không hiển thị. Tôi đoán nó đang được xử lý trong nền?

Dưới đây là một liên kết đến việc chuyển nhượng http://www.ics.uci.edu/~goodrich/teach/ics23/LabManual/Dark/

Dưới đây là file zip với tất cả các java và các tập tin .class http://www.ics.uci.edu/~goodrich/teach/ics23/LabManual/Dark/Dark.zip

Cảm ơn trước!

Trả lời

4

Để thêm tệp .class vào dự án của bạn trong Eclipse: nhấp chuột phải vào dự án của bạn, chọn thuộc tính -> Đường dẫn xây dựng Java -> Thư viện và nhấp vào nút Thêm thư mục lớp. Chọn thư mục với các lớp.

+4

dạy ai đó sử dụng giao diện cụ thể của IDE không phải là cách hữu ích để giải thích những gì đang thực sự xảy ra. – tobyodavies

+0

Tôi đồng ý, nhưng tôi thấy ở đây có rất nhiều câu trả lời giải thích chính xác những gì đang xảy ra và không giải thích những gì thực sự cần làm. – Tarlog

+0

Không thể đồng ý nhiều hơn với mục đích. Anh ta đang đặt câu hỏi từ quan điểm học tập chứ không phải là sản xuất. Đưa ra lời khuyên cụ thể về IDE nên tránh. :) – Angad

0

tệp lớp là đầu ra nhị phân của trình biên dịch java. chúng là tương đương java của các tệp .o trong C hoặc C++, "thịt" trong trường hợp này có thể là để bạn thực hiện.

Trình biên dịch java xử lý việc tìm kiếm và bao gồm cả các tập tin cần thiết, bạn có thể cần phải import some.package.name.*; để tránh phải sử dụng tên lớp đầy đủ (ví dụ SomeClass thay vì some.package.name.SomeClass)

1

.class tập tin được biên soạn phiên bản của .java tập tin. Giả sử rằng các .class tập tin được đặt tên và đóng gói một cách thích hợp, bạn sẽ có thể tham khảo chúng như thế này:

Tên tập tin: some.package.class

Code: import some.package;

Một khi bạn đã nhập gói bạn có thể gọi các phương thức trên các lớp chứa trong đó.

+0

Mã của giáo viên không sử dụng các gói> _ < – Dunes

0

Các tệp lớp được biên dịch các lớp và bạn không thể xem chúng trong IDE của mình. IDE của bạn sẽ cho phép bạn nhập chúng nhưng chỉ cần thả phần mở rộng ...

import example.some.Thing; 

Tệp .java là tệp nguồn được sử dụng nhiều nhất để biên dịch tệp .class. Tôi chắc rằng họ chỉ để bạn tham khảo.

4

Không, bạn sẽ không cần phải nhập. Đặt các tệp lớp trong cùng một thư mục để đường dẫn của chúng được bao gồm và chỉ cần gọi chúng như các kiểu dữ liệu bình thường.

Ví dụ:

myClass mc = new myClass(); 

hoặc

(new myClass()).myRoutine(); 

Nếu một số phương pháp là tĩnh

myClass.staticalicious(); 

nhập khẩu được sử dụng thường khi đường dẫn đến classfiles cần phải được xác định.

Ngoài ra, .class tệp chỉ được biên dịch .java tệp.

Oh và cuối cùng, theo danh pháp Java :) Nó sẽ là MyClass, không phải myClass.

1

Như những người khác đã đề cập, các tệp lớp là các tệp Java được biên dịch, vì vậy không có "thịt nhiều hơn" trong chúng hơn bạn có thể thấy trong tệp nguồn. Có các tệp lớp cho các giao diện và các tệp lớp để triển khai.

Tôi giả sử bạn chỉ sử dụng gói mặc định.

Vì vậy, chỉ cần thiết lập classpath vào thư mục giữ các lớp pre-biên soạn:

ví dụ để biên dịch các lớp học của bạn trên một hệ thống Linux/Unix:

javac -classpath <dirWithClassFiles>:. ..... 

và chạy ứng dụng:

java -classpath <dirWithClassFiles>:. ..... 

Sau đó, bạn có thể trực tiếp sử dụng những lớp học tiền biên dịch trong các lớp học của riêng bạn.

0

IDE Eclipse không hiển thị các tệp .class. bạn có thể thêm các tệp jars hoặc class vào đường dẫn xây dựng dự án của bạn. Và sau đó bạn có thể nhập lớp perticular vào lớp của riêng bạn để sử dụng nó.

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