Erişim Belirleyiciler
Solidity'de erişim belirleyiciler, kontrattaki değişkenlerin ve fonksiyonların görünürlüğünü ve erişilebilirliğini kontrol etmek için kullanılır. Bu belirleyiciler, hangi kod parçalarının kontratın hangi bölümlerine erişebileceğini tanımlar.
1. public
public
Değişkenler için: Değişken hem dışarıdan hem de kontrat içerisinden erişilebilir. Solidity,
public
olarak tanımlanan durum değişkenleri için arkaplanda otomatik getter fonksiyonları oluşturur.
Fonksiyonlar için: Fonksiyon dışarıdan (yani kontrat dışından) ve kontrat içerisinden çağrılabilir.
2. private
private
Değişkenler için: Değişken yalnızca tanımlandığı kontratın içinden erişilebilir. Alt kontratlar bile bu değişkene doğrudan erişemez.
Fonksiyonlar için: Fonksiyon yalnızca tanımlandığı kontratın içinden çağrılabilir. Alt kontratlar ve dışarıdaki başka bir kontrat bu fonksiyonu çağırma yetkisine sahip değildir.
3. internal
internal
Değişkenler için: Değişken, tanımlandığı kontratın içinden ve bu kontratı miras alan (inheriting) kontratlar tarafından erişilebilir. Ancak dışarıdan doğrudan erişilemez.
Fonksiyonlar için: Fonksiyon, tanımlandığı kontratın içinden ve bu kontratı miras alan kontratlar tarafından çağrılabilir. Dışarıdan erişim yoktur.
4. external
external
Fonksiyonlar için: Fonksiyon yalnızca kontrat dışından çağrılabilir. Kontratın içinde çağrılmak istendiğinde
this
anahtar kelimesi ile çağrılmalıdır. external genelde metamask ile arayüzden tetikleyeceğimiz fonksiyonlarda kullanılır.
Not: external
belirleyicisi değişkenler için kullanılamaz.
Örnek Uygulama
Last updated