7 Eylül 2020 Pazartesi

final Anahtar Kelimesi

Final Değişkene Bir Kere Değer Atanabilir
Örnek
Şöyle yaparız
final int value;
if (condition) {
  value = 1; // Ok!
} else {
  value = 2; // Ok!
}
value = 3; // Compile error: value already assigned.

Final Değişken Immutable Olsa İyi Olur
Yoksa final olmasının bir önemi olmayabilir. Yani Java'daki final, C++'taki const gibi çalışmıyor.

Örnek
Şöyle yaparız. Burada Date sınıfı immutable olmadığı için, final istenilen sonucu vermez.
// Note that (obsolete) Date class is mutable in Java.
final Date myDate = new Date();

myDate = new Date(); // Compilation error: can't reassign a final reference!

myDate.setTime(4711); // Ok, mutating referenced object is allowed!

Local Değişken
Local değişkende final specifier olması davranışı değiştirir.

Örnek
Şöyle yaparız
final int a = 97;
System.out.println(true ? a : 'c'); // outputs a

// versus

int a = 97;
System.out.println(true ? a : 'c'); // outputs 97

Hiç yorum yok:

Yorum Gönder