2013-05-24 35 views
8

Tôi đã nghiên cứu đa hình từ "Head First Java" và đã đi đến khái niệm này. Bất cứ ai có thể giải thích nó xin vui lòng với một ví dụ?Sự khác biệt giữa loại đối tượng và kiểu tham chiếu

Trình biên dịch kiểm tra loại tham chiếu - không phải loại đối tượng.

Vậy sự khác biệt giữa Loại tham chiếu và Loại đối tượng là gì?

+0

bạn có thể thêm một số ngữ cảnh khác. – UmNyobe

+0

http://is.gd/9hXyID có một cái nhìn ở đây, – Sikander

Trả lời

27

Tôi không nghĩ rằng việc sử dụng "loại đối tượng" và "loại tham chiếu" được tiêu chuẩn hóa, nhưng đây là cách giải thích của tôi.

xem xét mã này:

Object o = new Integer(3); 

Các tham khảoo là loại Object. Đối tượng mà tài liệu tham chiếu là loại Integer.

Vì vậy, "loại tham chiếu" sẽ là Object và "loại đối tượng" sẽ là Integer.

Điều gây khó hiểu là có thuật ngữ (chuẩn, chính thức) "reference type" đóng gói các loại có thể được tham chiếu. Trong Java bao gồm tất cả các lớp, enums, interfaces, array. Nó chỉ loại trừ các loại nguyên thủy (int, ...).

+0

Rất tốt giải thích Cảm ơn bạn rất nhiều .. – Sikander

+0

Cảm ơn bạn, điều này thực sự làm cho bản thân mình rõ ràng! – Kulasangar

6

nghĩa là gì bởi các điều khoản như sau:

  • đối tượng loại (trong cuốn sách của bạn) = kiểu thời gian chạy thực tế của referent
  • loại tài liệu tham khảo (trong cuốn sách của bạn) = loại tĩnh của tham chiếu

Có thể một số sẽ dễ hiểu hơn với các cụm từ này.

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