Forskellen Mellem Statisk Og Ikke-statisk Metode

Forskellen Mellem Statisk Og Ikke-statisk Metode
Forskellen Mellem Statisk Og Ikke-statisk Metode

Video: Forskellen Mellem Statisk Og Ikke-statisk Metode

Video: Forskellen Mellem Statisk Og Ikke-statisk Metode
Video: Statistical and non statistical questions | Probability and Statistics | Khan Academy 2024, November
Anonim

Statisk vs ikke-statisk metode

En metode er en række udsagn, der udføres for at udføre en bestemt opgave. Metoder kan tage input og producere output. Statiske og ikke-statiske metoder er to typer metoder, der findes i objektorienterede programmeringssprog. En statisk metode er en metode, der er knyttet til en klasse. En metode, der er knyttet til et objekt, kaldes en ikke-statisk (instans) metode. I objektorienterede sprog bruges metoder som en mekanisme til at fungere på data, der er gemt i objekter.

Hvad er en statisk metode?

I objektorienteret programmering er statisk metode en metode, der er forbundet med en klasse. Derfor har statiske metoder ikke evnen til at operere på en bestemt forekomst af en klasse. Statiske metoder kan påberåbes uden brug af et objekt i klassen, der indeholder den statiske metode. Følgende er et eksempel på at definere en statisk metode i Java. Den statiske skal bruges, når man definerer en statisk metode i Java.

public class MyClass {public static void MyStaticMethod () {// kode for den statiske metode}

}

Den statiske metode, der er defineret ovenfor, kan kaldes som følger ved hjælp af navnet på den klasse, den tilhører.

MyClass. MyStaticMethod ();

En vigtig ting at bemærke er, at statiske metoder kun kan få adgang til statiske medlemmer.

Hvad er en ikke-statisk metode?

En ikke-statisk metode eller en instansmetode er en metode, der er knyttet til et objekt i en klasse. Derfor kaldes ikke-statiske metoder ved hjælp af et objekt i den klasse, hvor metoden er defineret. En ikke-statisk metode kan få adgang til ikke-statiske medlemmer såvel som statiske medlemmer af en klasse. På mange objektorienterede sprog (såsom C ++, C #, Java), når en ikke-statisk metode kaldes, sendes det objekt, der påberåbte metoden, som et implicit argument (det kaldes 'denne' reference). Så inden i metoden kan dette nøgleord bruges til at henvise til det objekt, der kaldte metoden. Følgende er et eksempel på at definere en instansmetode i Java.

offentlig klasse MyClass {public void MyInstanceMethod () {// kode for instansmetoden}

}

Forekomstsmetoden defineret ovenfor kan kaldes som følger ved hjælp af et objekt af den klasse, det tilhører.

MyClass objMyClass = ny MyClass ();

objMyClass. MyInstanceMethod ();

Hvad er forskellen mellem statisk og ikke-statisk metode?

Statiske metoder er metoder, der er forbundet med en klasse, mens ikke-statiske metoder er metoder, der er forbundet med objekter fra en klasse. En klasse skal initieres først for at påberåbe sig en ikke-statisk metode, men statiske metoder har ikke dette krav. De kan simpelthen påberåbes ved hjælp af navnet på den klasse, der indeholder den statiske metode. En anden vigtig forskel er, at en ikke-statisk metode normalt har en henvisning til det objekt, der kaldte metoden, og at den kan tilgås ved hjælp af dette nøgleord inde i metoden. Men dette nøgleord kan ikke bruges i statiske metoder, da de ikke er knyttet til et bestemt objekt.

Anbefalet: