Tham chiếu trong C++ và Java

A/c cho e hỏi 1 đối tượng trong Java được tạo bằng từ khóa new . Ví dụ:
ADemo a = new ADemo();
Thì a gọi là 1 biến có thể tham chiếu tới đối tượng được cấp phát động.
Vậy biến a có chiếm vùng nhớ không? nếu có thì a có nằm cùng vùng nhớ với đối tượng không (vì nó đc gọi là tham chiếu???) ?

e có tìm hiểu thì đa số câu trả lời là biến tham chiếu trong java nó giống shared pointer bên C++. Mà nếu là con trỏ thì chắc phải tốn thêm 1 vùng nhớ, nv thì e thấy hơi tốn kém nhỉ! :cry:
E cảm ơn!

ko tốn ram sao gọi là Java hả em :V

1 con trỏ tầm 8 bytes à, object của em mấy chục mấy trăm bytes nhằm nhò gì, ví dụ chương trình em ngốn 200MB ram thêm 20MB bõ bèn gì :V Nhưng nếu em xài mấy cái wrapper class cho kiểu nguyên thủy như Char, Integer, Double gì thì coi chừng hộc máu vì con trỏ lúc này chiếm thêm 50-80% dung lượng bộ nhớ :V :V

5 Likes

Thiết bị thời nay khoẻ mà, vài chục MB bộ nhớ bõ bèn gì. 2019 chứ có phải 1969 đâu mà tiếc cái con trỏ.

5 Likes

a nằm trong stack, đối tượng nằm trong heap

5 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?