İş yerimde bir Java koduyla karşılaşıyorum. İşte senaryo: 2 sınıf var - ClassA
ve ClassB
. İçerisinde 4 adet genel statik son dize değeri dışında hiçbir şey bulunmamaktadır. Amacı ClassA.variable
gibi değerleri kullanmaktır (bana neden sorma, benim kodum değil).kamu statik son değişkeni
ClassB
ithalat ClassA
. Dize değerlerini ClassA
'da düzenledim ve derledim. ClassB
koştuğumda eski değerleri kullanıyordum - yeni değerleri değil. ClassA
'dan yeni değerler kullanabilmek için ClassB
'u yeniden derlemeliydim! (Ben ClassA
ithalatı yapan diğer sınıfları yeniden derlemek zorunda kaldım!)
Bu sadece JDK 1.6 nedeniyle mi yoksa daha önce ClassB
'u yeniden derlemem gerekirdi! Beni aydınlat. sınıf ClassA
den final
değişkenlerin değerleri derleme zaman sabitlerini olmak olur :)
Yani, genel statik finalin derleme zamanı sabiti olduğunu mu söylüyorsunuz? bunu bilmiyordum. Sadece bir sabit olduğunu düşündüm ve çalışma zamanında değiştirilemez! yardım ettiğin için teşekkür ederim. –
İyi anwser. Değişkenin satır içi olduğunu görmek istiyorsanız, sınıfın nasıl derlendiğini görmek için javap'ı kullanabilirsiniz. "javap -c Bayrakları". –