Différence entre méthode statique et non statique

Méthode statique vs non statique

Une méthode est une série d'instructions exécutées pour effectuer une tâche spécifique. Les méthodes peuvent prendre des intrants et produire des extrants. Les méthodes statiques et non statiques sont deux types de méthodes présentes dans les langages de programmation orientés objet. Une méthode statique est une méthode associée à une classe. Une méthode associée à un objet s'appelle une méthode non statique (instance). Dans les langages orientés objet, les méthodes sont utilisées comme un mécanisme permettant d’agir sur des données stockées dans des objets..

Qu'est-ce qu'une méthode statique??

En programmation orientée objet, la méthode statique est une méthode associée à une classe. Par conséquent, les méthodes statiques n'ont pas la capacité d'opérer sur une instance particulière d'une classe. Les méthodes statiques peuvent être appelées sans utiliser d'objet de la classe contenant la méthode statique. Voici un exemple de définition d’une méthode statique en Java. Le statique doit être utilisé lors de la définition d'une méthode statique en Java.

Classe publique MyClass public statique vide MyStaticMethod () // code de la méthode statique

La méthode statique définie ci-dessus pourrait être appelée comme suit en utilisant le nom de la classe à laquelle elle appartient.

MyClass.MyStaticMethod ();

Une chose importante à noter est que les méthodes statiques peuvent uniquement accéder aux membres statiques..

Qu'est-ce qu'une méthode non statique??

Une méthode non statique ou une méthode d'instance est une méthode associée à un objet dans une classe. Par conséquent, les méthodes non statiques sont appelées à l'aide d'un objet de la classe dans laquelle la méthode est définie. Une méthode non statique peut accéder aux membres non statiques ainsi qu'aux membres statiques d'une classe. Dans de nombreux langages orientés objet (tels que C ++, C #, Java), lorsqu'une méthode non statique est appelée, l'objet qui a invoqué la méthode est transmis en tant qu'argument implicite (la référence 'this'). Ainsi, dans la méthode, ce mot clé peut être utilisé pour faire référence à l'objet qui a appelé la méthode. Voici un exemple de définition d’une méthode d’instance en Java..

Classe publique MyClass public void MyInstanceMethod () // code de la méthode d'instance

La méthode d'instance définie ci-dessus pourrait être appelée comme suit à l'aide d'un objet de la classe à laquelle elle appartient.

MyClass objMyClass = new MyClass ();

objMyClass.MyInstanceMethod ();

Quelle est la différence entre la méthode statique et non statique?

Les méthodes statiques sont des méthodes associées à une classe, tandis que les méthodes non statiques sont des méthodes associées aux objets d'une classe. Une classe doit d'abord être instanciée pour appeler une méthode non statique, mais les méthodes statiques n'ont pas cette exigence. Ils peuvent être simplement appelés en utilisant le nom de la classe qui contient la méthode statique. Une autre différence importante est qu’une méthode non statique possède généralement une référence à l’objet qui l’a appelée et que l’on peut y accéder à l’aide du mot-clé this de la méthode. Mais ce mot clé ne peut pas être utilisé dans les méthodes statiques car elles ne sont pas associées à un objet particulier..