Static bir nesneyle ilgili olan özelliklerin o nesnenin instance’ıyla bağlı olup olmadığını belirler. Static değişken ve method olabilir.
Staticler Classtan yeni bir nesne oluşturulduğunda üretilmez. Bütün nesneler ayni static objeyi kullanır çünkü tamamen classa aittir ondan üretilen nesneye değil.
Const derlenmeden veya derlenme zamanı değerli bilinenlerdir. Var, final, dynamic sadece değişken tanımlarken kullanılır. Const’un farklı kullanımları da vardır.
dynamic: tip ve değer runtime’da bilinir.
var: tip compile time’da değer runtime’da bilinir.
final: tip compile time’da değer runtime time’da bilinir. (yalnızca bir kez tanımlanır.)
const: tip ve değer compile time’da bilinir.
bunların arasında en az maliyetli olan const’tur.
Var ve dynamic arasındaki fark
var x = “ali onur”;
dynamic y = ” özdemir”;
x. yazdığında string metodları gelebilir.
ama y. yazdığında metodlar gelmez.
Çünkü var x dediğimde kod derlenmeden önce onun bir string olduğu anlaşılabiliyor ama dynamic y dediğinde onun tipi kod derlendikten sonra verildiği için ide de metodları gelmiyor.
dynamic değişkeninin içerisindeki tipler değişebilir
Örneğin
dynamic x = 5;
x= “ali onur”; ama var için böyle olmaz.
Const ve Final arasındaki Fark
final tanımlanmış bir listeye sonradan ekleme yapabilirsiniz. Ancak cost olarak tanımlanmış bir listede bu işlemleri gerçekleştiremezsiniz.
Örneğin: