Middle
@CallSuper qeydinin məqsədi nədir?
sobes.tech Süni İntellekt
AI-dan cavab
@CallSuper qeydi, alt sinifdə (alt sinifdə) yenidən yazılan metodun mütləq olaraq superklassın metodunun tətbiqini çağırmalı olduğunu göstərmək üçün istifadə olunur.
Bu aşağıdakı hallarda faydalıdır:
- Superklassın vəziyyəti: Superklass öz metodunda vacib bir vəziyyəti başlada və ya idarə edə bilər.
@CallSuperçağırışı, bu vəziyyətin hər hansı bir alt sinifdə düzgün idarə olunmasını təmin edir. - Resurslar/Təmizləmə: Superklass öz metodunda resursları idarə edə və ya təmizləmə əməliyyatları həyata keçirə bilər.
@CallSuperbu əməliyyatların metod yenidən yazılsa belə yerinə yetirilməsini təmin edir. - Davranış müqaviləsi: Anotasiya, superklassın tətbiqinin ümumi davranışın bir hissəsi olduğunu göstərir və onu alt siniflərdə saxlamalıdır.
İstifadə nümunəsi:
public class BaseActivity extends AppCompatActivity {
@Override
@CallSuper // onCreate() superklassdan çağırılmalı olduğunu göstərir
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Əsas komponentlərin başlanması
}
}
public class MyActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // Zorunlu supermetod çağırışı
// MyActivity üçün əlavə başlanğıc
}
}
Əhəmiyyətli qeyd: @CallSuper kod analizi alətləri (məsələn, Lint) üçün bir göstərişdir və tərtib səviyyəsində məcburi tələb deyil. Bu anotasiya ilə işarələnmiş metod super() çağırmadan yenidən yazılsa, xəbərdarlıq veriləcək.