Różnica Między Metodą Statyczną I Niestatyczną

Różnica Między Metodą Statyczną I Niestatyczną
Różnica Między Metodą Statyczną I Niestatyczną

Wideo: Różnica Między Metodą Statyczną I Niestatyczną

Wideo: Różnica Między Metodą Statyczną I Niestatyczną
Wideo: 30. Kurs Python 3 - Klasy - metody klas oraz statyczne 2024, Kwiecień
Anonim

Metoda statyczna vs niestatyczna

Metoda to seria instrukcji wykonywanych w celu wykonania określonego zadania. Metody mogą przyjmować dane wejściowe i generować wyniki. Metody statyczne i niestatyczne to dwa rodzaje metod występujących w językach programowania obiektowego. Metoda statyczna to metoda skojarzona z klasą. Metoda skojarzona z obiektem nazywana jest metodą niestatyczną (instancją). W językach obiektowych metody są używane jako mechanizm operacji na danych przechowywanych w obiektach.

Co to jest metoda statyczna?

W programowaniu obiektowym metoda statyczna to metoda skojarzona z klasą. W związku z tym metody statyczne nie mają możliwości działania na określonym wystąpieniu klasy. Metody statyczne można wywoływać bez użycia obiektu klasy, która zawiera metodę statyczną. Poniżej znajduje się przykład definiowania metody statycznej w Javie. Statyczny musi być używany podczas definiowania metody statycznej w Javie.

public class MyClass {public static void MyStaticMethod () {// kod metody statycznej}

}

Zdefiniowaną powyżej metodę statyczną można wywołać w następujący sposób, używając nazwy klasy, do której należy.

MyClass. MyStaticMethod ();

Należy pamiętać, że metody statyczne mogą uzyskiwać dostęp tylko do statycznych elementów członkowskich.

Co to jest metoda niestatyczna?

Metoda niestatyczna lub metoda instancji to metoda skojarzona z obiektem w klasie. Dlatego metody niestatyczne są wywoływane przy użyciu obiektu klasy, w której metoda jest zdefiniowana. Metoda niestatyczna może uzyskać dostęp do niestatycznych elementów członkowskich, a także statycznych elementów członkowskich klasy. W wielu językach obiektowych (takich jak C ++, C #, Java), gdy wywoływana jest metoda niestatyczna, obiekt, który wywołał tę metodę, jest przekazywany jako niejawny argument (nazywany jest referencją „this”). Tak więc wewnątrz metody można użyć tego słowa kluczowego w celu odniesienia się do obiektu, który wywołał metodę. Poniżej znajduje się przykład definiowania metody instancji w języku Java.

public class MyClass {public void MyInstanceMethod () {// kod metody instancji}

}

Zdefiniowaną powyżej metodę instancji można wywołać w następujący sposób, używając obiektu klasy, do której należy.

MyClass objMyClass = new MyClass ();

objMyClass. MyInstanceMethod ();

Jaka jest różnica między metodą statyczną a niestatyczną?

Metody statyczne to metody skojarzone z klasą, natomiast metody niestatyczne to metody skojarzone z obiektami klasy. Aby wywołać metodę niestatyczną, należy najpierw utworzyć instancję klasy, ale metody statyczne nie mają tego wymagania. Można je po prostu wywołać, używając nazwy klasy, która zawiera metodę statyczną. Inną ważną różnicą jest to, że metoda niestatyczna zwykle zawiera odwołanie do obiektu, który wywołał metodę i można uzyskać do niego dostęp za pomocą słowa kluczowego this wewnątrz metody. Ale tego słowa kluczowego nie można używać w metodach statycznych, ponieważ nie są one skojarzone z określonym obiektem.

Zalecane: