2013-06-10 14 views
8

Ich lerne immer noch über Methoden in Java und fragte mich, wie genau Sie eine Instanzmethode verwenden könnten. Ich dachte an so etwas wie diese:Beispiel für eine Instanzmethode? (Java)

public void example(String random) { 
} 

Allerdings bin ich mir nicht sicher, ob dies tatsächlich eine Instanzmethode oder eine andere Art von Verfahren. Könnte mir jemand helfen?

Antwort

16

Wenn es sich nicht um eine statische Methode handelt, handelt es sich um eine Instanzmethode. Es ist entweder das eine oder das andere. Also ja, Ihre Methode,

public void example(String random) { 
    // this doesn't appear to do anything 
} 

ist ein Beispiel für eine Instanzmethode.

In Bezug auf

und frage mich, wie genau können Sie eine Instanzmethode

verwenden würden Sie eine Instanz der Klasse erstellen, ein Objekt, und dann auf der Instanz die Instanz-Methode aufrufen. dh

public class Foo { 
    public void bar() { 
     System.out.println("I'm an instance method"); 
    } 
} 

die wie verwendet werden könnte:

Foo foo = new Foo(); // create an instance 
foo.bar(); // call method on it 
+0

Sehr hilfreich, danke! Ich werde deine Antwort als meine akzeptierte geben. – user2446065

+0

Nur eine Frage zu Ihrem Beispielcode ... bedeutet "bar" irgendetwas? – user2446065

+0

@ user2446065: Nein, Bar ist ein Standard-Nonsense-Name, wie Foo. –

1

* Eine Instanzmethode * wird ein Verfahren mit den Objekten zugeordnet ist, wird jede Instanz-Methode mit einem verborgenen Argument aufgerufen, die auf die verweist aktuelles Objekt. beispielsweise auf einer Instanzmethode:

public void myMethod { 
     // to do when call code 
} 
2
class InstanceMethod 
    { 
    public static void main(String [] args){ 
     InstanceMethod obj = new InstanceMethod();// because that method we wrote is instance we will write an object to call it 
      System.out.println(obj.sum(3,2)); 
    } 
    int f; 
    public double sum(int x,int y){// this method is instance method because we dont write static 

      f = x+y; 
      return f; 
     } 
    } 
0

Instanz Variablenname Ein Objekt hat Attribute, die als Instanzvariablen und trug damit während seiner gesamten Lebensdauer realisiert sind. Instanzvariablen existieren, bevor Methoden für ein Objekt aufgerufen werden, während die Methoden ausgeführt werden und nachdem die Methoden die Ausführung abgeschlossen haben. Eine Klasse enthält normalerweise eine oder mehrere Methoden, die die Instanzvariablen bearbeiten, die zu bestimmten Objekten der Klasse gehören. Instanzvariablen werden innerhalb einer Klassendeklaration deklariert, jedoch außerhalb der Körper der Methodendeklarationen der Klasse. Jedes Objekt (Instanz) der Klasse hat eine eigene Kopie jeder Instanzvariable der Klasse.

0

Instanzmethode bedeutet, dass das Objekt Ihrer Klasse erstellt werden muss, um auf die Methode zugreifen zu können. Auf der anderen Seite wird für statische Methoden als eine Eigenschaft der Klasse und nicht die ihres Objekts/Instanz zugegriffen, ohne dass irgendeine Instanz der Klasse erzeugt wird. Aber denken Sie daran, dass statische Methoden nur auf statische Variablen zugreifen können, während die Instanzmethode auf die Instanzvariablen Ihrer Klasse zugreifen kann. Statische Methoden und statische Variablen sind für die Speicherverwaltung nützlich, da keine Objekte deklariert werden müssen, die sonst Speicher belegen würden.

Beispiel Instanzmethode und variabel:

public class Example { 
    int a = 10; // instance variable 
    private static int b = 10; // static variable (belongs to the class) 

    public void instanceMethod(){ 
     a =a + 10; 
    } 

    public static void staticMethod(){ 
     b = b + 10; 
    } 
} 

void main(){ 

    Example exmp = new Example(); 
    exmp.instanceMethod(); // right 
    exmp.staticMethod(); // wrong..error.. 

    // from here static variable and method cant be accessed. 

} 
Verwandte Themen