Giriş
Açıklaması şöyle. Değişkene bir kere atama yapılabilir.
Degişken reference ise tanımlama esnasında ilklendirilebilir.
Örnek
Şöyle yaparız.
Örnek
Şöyle yaparız.
Bu işlem değişkenin const olduğu anlamına gelmez. Sadece primitive tipler icin const olur. Yani listeye ekleme çıkarma yapılabilir. Şöyle yaparız.
Değişken default değeri ile ilklendirilir.
Örnek
Elimizde şöyle bir kod olsun.
Açıklaması şöyle. Değişkene bir kere atama yapılabilir.
İlk AtamaA variable can be declared final. A final variable may only be assigned to once. It is a compile-time error if a final variable is assigned to unless it is definitely unassigned immediately prior to the assignment
Degişken reference ise tanımlama esnasında ilklendirilebilir.
Örnek
Şöyle yaparız.
private final ArrayList<Integer> list = new ArrayList<>();
Veya constructor içinde bir kere ilklendirilebilir.Örnek
Şöyle yaparız.
public Foo (){
this.list = new ArrayList<Integer>();
}
DiğerBu işlem değişkenin const olduğu anlamına gelmez. Sadece primitive tipler icin const olur. Yani listeye ekleme çıkarma yapılabilir. Şöyle yaparız.
public add (){
this.list.add (...);
}
Atama YapılmazsaDeğişken default değeri ile ilklendirilir.
Örnek
Elimizde şöyle bir kod olsun.
public class Foo {
public static void main(String[] args) {
System.out.println(scale(5));
}
private static final long X = scale(10);
private static long scale(long value) {
return X * value;
}
}
scale() metodu içinde X değişkeni ilklendirilmeden kullanıldığı için 0 ile başlar. Bu yüzden çıktı olarak 0 alırız.
Hiç yorum yok:
Yorum Gönder