Razlika između statičke i nestatičke metode

Razlika između statičke i nestatičke metode
Razlika između statičke i nestatičke metode

Video: Razlika između statičke i nestatičke metode

Video: Razlika između statičke i nestatičke metode
Video: Ima li razlike između privatnih i javnih vrtića u Tuzli? - 21.12.2022. 2024, Juli
Anonim

Statička vs nestatička metoda

A metoda je niz naredbi koje se izvršavaju da bi se izvršio određeni zadatak. Metode mogu uzeti inpute i proizvesti izlaze. Statičke i nestatičke metode su dvije vrste metoda prisutnih u objektno orijentiranim programskim jezicima. Statička metoda je metoda koja je povezana s klasom. Metoda koja je povezana s objektom naziva se nestatična (instanca) metoda. U objektno orijentisanim jezicima, metode se koriste kao mehanizam za rad na podacima koji su pohranjeni u objektima.

Šta je statička metoda?

U objektno orijentiranom programiranju, statička metoda je metoda koja je povezana s klasom. Stoga, statičke metode nemaju sposobnost da rade na određenoj instanci klase. Statičke metode se mogu pozvati bez korištenja objekta klase koji sadrži statičku metodu. Slijedi primjer definiranja statičke metode u Javi. Statika se mora koristiti kada se definiše statička metoda u Javi.

javna klasa MyClass { public static void MyStaticMethod() { // kod statičke metode }

}

Statička metoda definirana gore mogla bi se pozvati na sljedeći način korištenjem imena klase kojoj pripada.

MyClass. MyStaticMethod();

Jedna važna stvar koju treba napomenuti je da statičke metode mogu pristupiti samo statičnim članovima.

Šta je nestatična metoda?

Nestatična metoda ili metoda instance je metoda koja je pridružena objektu u klasi. Stoga se nestatičke metode pozivaju korištenjem objekta klase u kojoj je metoda definirana. Nestatična metoda može pristupiti nestatičnim članovima, kao i statičkim članovima klase. U mnogim objektno orijentisanim jezicima (kao što su C++, C, Java), kada se pozove nestatična metoda, objekat koji je pozvao metodu se prosleđuje kao implicitni argument (naziva se 'ova' referenca). Dakle, unutar metode ova ključna riječ se može koristiti za upućivanje na objekat koji je pozvao metodu. Slijedi primjer definiranja metode instance u Javi.

javna klasa MyClass { public void MyInstanceMethod() { // kod metode instance }

}

Gore definirana metoda instance mogla bi se pozvati na sljedeći način korištenjem objekta klase kojoj pripada.

MyClass objMyClass=new MyClass();

objMyClass. MyInstanceMethod ();

Koja je razlika između statičke i nestatične metode?

Statičke metode su metode koje su povezane sa klasom, dok su nestatične metode metode koje su pridružene objektima klase. Klasa se mora prvo instancirati da bi se pozvala nestatička metoda, ali statičke metode nemaju ovaj zahtjev. Mogu se jednostavno pozvati pomoću imena klase koja drži statičku metodu. Druga važna razlika je u tome što nestatična metoda obično posjeduje referencu na objekt koji je pozvao metodu i može joj se pristupiti pomoću ključne riječi this unutar metode. Ali ova ključna riječ se ne može koristiti u statičkim metodama jer nisu povezane s određenim objektom.

Preporučuje se: