süper.onCreate(savedİnstanceState);
Merhaba, çok temel bir soru var. Eclipse Android Uygulaması bir Proje oluşturdu. Mainactivity.java - onCreate()
çağırıyor
super.onCreate(savedInstanceState)
.
Herkes üzerinde bir satır amacı nedir açıklayabilir misiniz?
CEVAP
Yaptığınız her Aktivite yöntem çağrıları bir dizi başladı. onCreate()
Bu çağrı ilk değil.
Faaliyetlerinin her biri android.app.Activity
doğrudan veya Activity
bir başka alt sınıflara ya da genişletir.
Bir sınıftan devralır Java, yöntemlerini onlara kendi kod çalıştırmak için geçersiz kılabilirsiniz. Bu çok yaygın bir örnek java.lang.Object
genişletme toString()
yöntemin geçersiz kıldı.
Biz bir yöntemi geçersiz olduğunda, biz tamamen mevcut üst sınıf uzanan bizim sınıfta, ya da' Yöntem. Bu yöntem değiştirme seçeneği var super.onCreate(savedInstanceState);
, çağırarak Dalvik VM kod çalıştırmak için söylebuna ek olarakonCreate varolan kodu() üst sınıf. Eğer bu satır bırakırsanız, o zamantek kodunuzusahiptir. Varolan kod tamamen göz ardı edilir.
Ancak gerekir bu süper çağrısı yöntemi, çünkü eğer sen gelmiyorsun onCreate()
kod Activity
asla çalıştırın ve app çalışacaktır içine her türlü sorun gibi olan hiçbir İçerik atanan Aktivite (gerçi seni döveceğim SuperNotCalledException
önce size bir şans olduğunu anlamak var bağlam yok).
Kısacası, Android kendi sınıfları inanılmaz derecede karmaşık olabilir. Çerçeve sınıf kodunu çizim UI, ev temizliği ve Etkinlik ve uygulama ömürleri bakımı gibi şeyler işler. super
hala kendi uygulamaları için soyutlama iyi düzeyde sağlarken, geliştiriciler perde arkasında bu karmaşık kod çalıştırmak için izin çağırır.
Ne'un onCreate(Bundle savedİnstan...
Android - Aktivite Yapıcı vs onCreate...
Nasıl Python (süper) temel sınıf başla...
ruby süper sınıf başka bir yöntem arıy...
Tam olarak Objective-C süper nedir?...