Junior
Kodėl kai kuriose sąsajose metodai nėra apibrėžti?
sobes.tech AI
Atsakymas iš AI
Žymeklio sąsajos (žymeklio sąsajos) nenurodo metodų. Jie naudojami klasės pažymėjimui, nurodant, kad ji turi tam tikrą savybę ar galimybę.
Žymeklio sąsajų pavyzdžiai:
java.io.Serializable: Pažymi klasę, kurios objektai gali būti serializuoti.java.lang.Cloneable: Pažymi klasę, kurios objektai gali būti klonuoti (palaiko metodąclone()).java.util.RandomAccess: Pažymi sąrašus, kurie palaiko greitą (pastovų laiką) atsitiktinį prieigą prie savo elementų.
Žymeklio sąsajų naudojimas leidžia:
- Klasės identifikavimą: Patikrinti objekto tipą naudojant
instanceofoperatorių.// patikrinimas, ar objektas yra serializuojamas if (object instanceof Serializable) { // serializacija } - Elgesio keitimą: API gali keisti savo elgesį priklausomai nuo to, ar klasė įgyvendina žymeklio sąsają. Pavyzdžiui, jei sąrašas įgyvendina
RandomAccess, operacijos su juo gali būti optimizuotos. - Prieigos apribojimą: Kai kurios API gali reikalauti, kad perduodami objektai įgyvendintų tam tikrą žymeklio sąsają.
- Pažymės: Moderniuose požiūriuose, daugelis žymeklio sąsajų naudojimo scenarijų įgyvendinami naudojant anotacijas. Tačiau žymeklio sąsajos vis dar naudojamos Java standartinėje bibliotekoje ir legacy kode.