Statinio ir nestatinio metodo skirtumas

Statinio ir nestatinio metodo skirtumas
Statinio ir nestatinio metodo skirtumas

Video: Statinio ir nestatinio metodo skirtumas

Video: Statinio ir nestatinio metodo skirtumas
Video: Trigonometrijos funkcijos ir formulės 2024, Liepa
Anonim

Statinis ir nestatinis metodas

Metodas – tai eilė teiginių, atliekamų norint atlikti konkrečią užduotį. Metodai gali paimti įvestis ir generuoti rezultatus. Statiniai ir nestatiniai metodai yra dviejų tipų objektai orientuotose programavimo kalbose. Statinis metodas yra metodas, susietas su klase. Metodas, susietas su objektu, vadinamas nestatiniu (pavyzdžiui) metodu. Į objektus orientuotose kalbose metodai naudojami kaip mechanizmas valdyti duomenis, saugomus objektuose.

Kas yra statinis metodas?

Objektiniame programavime statinis metodas yra metodas, susietas su klase. Todėl statiniai metodai negali veikti konkrečiame klasės egzemplioriuje. Statinius metodus galima iškviesti nenaudojant klasės objekto, kuriame yra statinis metodas. Toliau pateikiamas statinio metodo apibrėžimo Java programoje pavyzdys. Apibrėžiant statinį metodą Java turi būti naudojamas statinis.

public class MyClass { public static void MyStaticMethod() { // statinio metodo kodas }

}

Aukščiau apibrėžtas statinis metodas gali būti vadinamas taip, naudojant klasės, kuriai jis priklauso, pavadinimą.

MyClass. MyStaticMethod();

Vienas svarbus dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad statiniai metodai gali pasiekti tik statinius narius.

Kas yra nestatinis metodas?

Nestatinis metodas arba egzemplioriaus metodas yra metodas, susietas su klasės objektu. Todėl nestatiniai metodai iškviečiami naudojant klasės, kurioje metodas yra apibrėžtas, objektą. Nestatinis metodas gali pasiekti nestatinius ir statinius klasės narius. Daugelyje į objektus orientuotų kalbų (pvz., C++, C, Java), kai iškviečiamas nestatinis metodas, objektas, kuris iškvietė metodą, perduodamas kaip numanomas argumentas (jis vadinamas „šia“nuoroda). Taigi metodo viduje šis raktinis žodis gali būti naudojamas norint nurodyti objektą, kuris vadino metodą. Toliau pateikiamas „Java“egzemplioriaus metodo apibrėžimo pavyzdys.

public class MyClass { public void MyInstanceMethod() { // egzemplioriaus metodo kodas }

}

Aukščiau apibrėžtą egzempliorių metodą galima iškviesti taip, naudojant klasės, kuriai jis priklauso, objektą.

MyClass objMyClass=new MyClass();

objMyClass. MyInstanceMethod ();

Kuo skiriasi statinis ir nestatinis metodas?

Statiniai metodai yra metodai, susieti su klase, o nestatiniai metodai yra metodai, susieti su klasės objektais. Norint iškviesti nestatinį metodą, pirmiausia reikia sukurti klasę, tačiau statiniams metodams šis reikalavimas netaikomas. Juos galima tiesiog iškviesti naudojant klasės, kurioje yra statinis metodas, pavadinimą. Kitas svarbus skirtumas yra tas, kad nestatinis metodas paprastai turi nuorodą į objektą, kuris vadino metodą, ir jį galima pasiekti naudojant šį metodo raktinį žodį. Tačiau šio raktinio žodžio negalima naudoti statiniuose metoduose, nes jie nėra susieti su konkrečiu objektu.

Rekomenduojamas: