Merhabalar,
Class yapısı içerisinde self kullanımı - Python - YazBel forumu
Bu konuda, konu sahibi çok self kullanmış. Bu self
i kullanmadan, direktmen düz şekilde ve class
kullanmadan yapsak ne olur? Neden class
ve self
yapısı kullanılır?
Merhabalar,
Class yapısı içerisinde self kullanımı - Python - YazBel forumu
Bu konuda, konu sahibi çok self kullanmış. Bu self
i kullanmadan, direktmen düz şekilde ve class
kullanmadan yapsak ne olur? Neden class
ve self
yapısı kullanılır?
self kelimesi o class’ özel tanımlanmış anlamına gelir.
Java, C# gibi dillerde this kullanılır.
class toplama{
public int sayi1;
public toplama(int sayi1)
this.sayi1 = sayi1;
}
Yukarıdaki mantık Python’da self olarak kullanılır. Ya da bir çok dilde @ olarak geçen sözdizim aracı kullanılır belirli class’lara atama yapılması için. Python’da @ olmadığından dolayı self kullanılır.
class D:
def __init__(self):
self.f()
def f(self):
print ("self:", self)
p = D()
print("p:", p)
Burada D
, bir class, p
ise bir instance’dır. self de bir instance’dır. self, p
nin bizzat kendisidir.
self, class dışında kullanılamaz, p de class içinde. Şöyle düşün:
Bir fabrikan var ve elindeki fabrikanın anahtarı ile fabrikanın bütün makinelerini çalıştırabiliyorsun.
Anahtarı kopyalatiyoruz, birini yönetici olan bize, diğerini bekçiye veriyoruz.
Bekçideki anahtar , self oluyor,
Bizdeki anahtar p
instance i oluyor.
Tabi bu çok yüzeysel bir anlatım.
Eğer biz methodu def __deneme(self)
olarak tanimlasaydik __deneme
methodu sadece self ile çalıştırılabilir. Buraları ilerleyince öğrenirsin vs. vs.