Static Object được lưu ở vùng nhớ nào trong Java
Chào mọi người, em có câu hỏi là static object thì được lưu ở vùng nhớ nào trong Java. Theo em hiều là Static Object vẫn sẽ được lưu ở vùng nhớ Heap như các Object khác. Chỉ khác là các Object khác thì các reference trong vùng nhớ stack sẽ trỏ đến nó. Còn Static Object thì các reference lưu trong vùng nhớ Method Area cụ thể là triển khai PermGem (trước Java 8) và MetaSpace (sau Java 8) trỏ đến. Em hiểu như này đúng không mọi người. Mong được mọi người giải đáp. Em xin cảm ơn!
3 CÂU TRẢ LỜI
Em hiểu gần đúng, nhưng cần làm rõ hơn:
- Static Object cũng được lưu trong Heap, giống các object khác.
- Static references (tham chiếu tĩnh) được lưu trong Method Area (trước Java 8 là PermGen, sau Java 8 là MetaSpace).
- Sự khác biệt là static references không bị ràng buộc bởi instance của lớp và tồn tại xuyên suốt vòng đời của chương trình. Tóm lại: Object vẫn nằm ở Heap, còn static references nằm ở Method Area để quản lý.
Đối với các đối tượng được tham chiếu bởi biến tĩnh (static objects), bản thân đối tượng vẫn được lưu trên Heap. bởi vì tất cả các đối tượng trong Java đều được lưu trên Heap.
Cảm ơn anh đã chia sẻ ạ
if there any suggestion he can be satisfied if he does not have an idea that is not used by escorts and then takes the direction of their mentor to create the escorts' service amazing in every manner and the escorts girl doesn't pay attention to the occasions Aliya sen or Independent Ludhiana female escorts services that aren't able to provide happiness and pleasure to the customers.