Sự khác biệt giữa biến cuối cùng và hằng số thời gian biên dịch là gì?Sự khác nhau giữa các biến cuối cùng và hằng số thời gian biên dịch
Xét đoạn mã sau
final int a = 5;
final int b;
b=6;
int x=0;
switch(x)
{
case a: //no error
case b: //compiler error
}
này có ý nghĩa gì? Khi nào và làm thế nào là các biến cuối cùng được gán một giá trị? Điều gì sẽ xảy ra vào thời gian chạy và những gì xảy ra vào thời gian biên dịch? Tại sao chúng ta nên chuyển đổi hằng số thời gian biên dịch? Cấu trúc nào của java đòi hỏi một hằng số thời gian biên dịch?
Vui lòng tham khảo liên kết đến phần cụ thể của chủ đề này trong JLS –