Differenza Tra Metodo Statico E Non Statico

Differenza Tra Metodo Statico E Non Statico
Differenza Tra Metodo Statico E Non Statico

Video: Differenza Tra Metodo Statico E Non Statico

Video: Differenza Tra Metodo Statico E Non Statico
Video: Tutorial c# - 26 Metodi Statici [2020] 2024, Aprile
Anonim

Metodo statico vs non statico

Un metodo è una serie di istruzioni eseguite per eseguire un'attività specifica. I metodi possono prendere input e produrre output. I metodi statici e non statici sono due tipi di metodi presenti nei linguaggi di programmazione orientati agli oggetti. Un metodo statico è un metodo associato a una classe. Un metodo associato a un oggetto è chiamato metodo non statico (istanza). Nei linguaggi orientati agli oggetti, i metodi vengono utilizzati come meccanismo per operare sui dati archiviati negli oggetti.

Cos'è un metodo statico?

Nella programmazione orientata agli oggetti, il metodo statico è un metodo associato a una classe. Pertanto, i metodi statici non hanno la capacità di operare su una particolare istanza di una classe. I metodi statici possono essere richiamati senza utilizzare un oggetto della classe che contiene il metodo statico. Di seguito è riportato un esempio di definizione di un metodo statico in Java. Lo static deve essere utilizzato quando si definisce un metodo statico in Java.

public class MyClass {public static void MyStaticMethod () {// code of the static method}

}

Il metodo statico definito sopra potrebbe essere chiamato come segue usando il nome della classe a cui appartiene.

MyClass. MyStaticMethod ();

Una cosa importante da notare è che i metodi statici possono accedere solo ai membri statici.

Cos'è un metodo non statico?

Un metodo non statico o un metodo di istanza è un metodo associato a un oggetto in una classe. Pertanto, i metodi non statici vengono chiamati utilizzando un oggetto della classe in cui è definito il metodo. Un metodo non statico può accedere a membri non statici e membri statici di una classe. In molti linguaggi orientati agli oggetti (come C ++, C #, Java), quando viene chiamato un metodo non statico, l'oggetto che ha invocato il metodo viene passato come argomento implicito (è chiamato riferimento "this"). Quindi, all'interno del metodo questa parola chiave può essere utilizzata per fare riferimento all'oggetto che ha chiamato il metodo. Di seguito è riportato un esempio di definizione di un metodo di istanza in Java.

public class MyClass {public void MyInstanceMethod () {// codice del metodo dell'istanza}

}

Il metodo di istanza definito sopra potrebbe essere chiamato come segue utilizzando un oggetto della classe a cui appartiene.

MyClass objMyClass = new MyClass ();

objMyClass. MyInstanceMethod ();

Qual è la differenza tra metodo statico e non statico?

I metodi statici sono metodi associati a una classe, mentre i metodi non statici sono metodi associati agli oggetti di una classe. Una classe deve essere istanziata prima per richiamare un metodo non statico, ma i metodi statici non hanno questo requisito. Possono essere richiamati semplicemente utilizzando il nome della classe che contiene il metodo statico. Un'altra importante differenza è che un metodo non statico di solito possiede un riferimento all'oggetto che ha chiamato il metodo ed è possibile accedervi utilizzando la parola chiave this all'interno del metodo. Ma questa parola chiave non può essere utilizzata nei metodi statici poiché non sono associati a un oggetto particolare.

Raccomandato: