Kể từ khi enum trong C# là trên ngăn xếp, tôi đã tự hỏi nơi enum, trong Java, nơi tạo ra. Trên ngăn xếp? Trên đống? Ở một nơi bí ẩn nào khác?Enum của Java ... Chúng được tạo ra ở đâu?
Enumeration trong C# có nhiều nguyên thủy hơn so với Java, điều này có thể giải thích tại sao họ được tạo ra trên stack ...
họ đang ở đâu? Tôi không thể tìm thấy chúng!
Cảm ơn
Enums trong C# * có thể * nằm trên ngăn xếp, nhưng chúng cũng có thể nằm trên heap. Tất cả phụ thuộc vào nơi chúng được sử dụng (trường/tham biến/biến địa phương). Họ là những loại giá trị mặc dù, có lẽ đó là nơi mà sự nhầm lẫn đến từ đâu? Bên cạnh đó, trong .NET nó không quan trọng, nơi nội dung của một biến được lưu trữ; đây chỉ là một chi tiết thực hiện (và có thể thay đổi trong một thực hiện khác nhau của CLR). –
Trong sự tò mò hoang dã, tại sao bạn muốn biết liệu họ đang ở trên ngăn xếp hoặc đống? – whaley
@whaley Sự tò mò đơn giản – ALOToverflow