Tên tiêu chuẩn là một với một đường dẫn đầy đủ, ví dụ .:
java.util.ArrayList list;
Một tên không đủ tiêu chuẩn có chỉ là phần cuối cùng:
import java.util.*;
ArrayList list;
Thuật ngữ này có thể áp dụng đối với các lĩnh vực và phương pháp quá.
Vì vậy, nếu bạn có thể nhập các lớp học, tại sao bạn cần sử dụng tên đủ điều kiện?
Bạn cần nó khi bạn đang sử dụng hai lớp học, trong khi chúng từ các gói khác nhau, chia sẻ cùng một tên. Một ví dụ điển hình là lớp ridiculously đặt tên từ JDK:
java.sql.Date
mà tình cờ kéo dài
java.util.Date
Đó là lý chung cần tham chiếu đến các trường hợp của cả lớp, vì vậy bạn cần có mã trông giống như:
public void process(java.util.Date fromDate) {
RowSet rows = <run query with fromDate as parameter>
while (rows.nsxt()) {
java.sql.Date date = rows.getDate(1);
// code that needs date
}
}
Nếu bạn sử dụng hai lớp học cùng tên, không có đủ điều kiện tránh ít nhất một lớp - bạn có thể nhập một lớp, nhưng nhập cả hai đều tạo ra sự mơ hồ.
Đây là một câu hỏi Stack Overflow tuyệt vời: nó đơn giản với một câu trả lời rõ ràng. Chỉ vì bạn có thể tìm thấy câu trả lời ở nơi khác (theo ý kiến của tôi), không có nghĩa là SO không nên có câu trả lời. Tôi đã không nhìn xem nếu nó là một bản sao. – Thomas
@Thomas Quá tệ cho thấy nỗ lực nghiên cứu không. Đó là một lý do "mạnh mẽ" đối với một số người để downvote. – Tom
Tôi ở cùng bạn; tuy nhiên, một bình luận khác (mà tôi đã gắn cờ, chống lại bình luận ở trên đã được viết), là đồng nghĩa, không mang tính xây dựng, và đã cho SO một đại diện xấu. – Thomas