# "Hook"-Methode



## Timmy (10. Nov 2005)

Hallo zusammen!

Ich bin sehr neu hier und habe auch gleich eine Frage! Hoffe das ist OK so   

Mein Ausbilder hat mir unter Anderem die Aufgabe gegeben, herauszufinden, was eine so genannte "Hook"-Methode oder Einschubmethode ist! Ich habe bereits die Forumsuche sowohl als auch Google benutzt, jedoch habe ich keine Erklärung oder ähnliches gefunden!

Gibt es sowas überhaupt oder nennt sich das ganze anderster? 

Ich würde mich riesig freuen wenn ihr mir helfen könntet! 

Danke im Voraus!
Tim


----------



## bygones (10. Nov 2005)

ich frag mich immer wie ihr Google benutzt ?!

http://www.google.de/search?q=Einschubmethode liefert ein paar Links die sich u.a. damit beschäftigen....


----------



## Timmy (10. Nov 2005)

OK, danke,

aber da habe ich auch zuvor finde ich nichts Gutes gefunden, aber ich werde weitersuchen!   ???:L  

Trotzdem danke...
Tim


----------



## bygones (10. Nov 2005)

mhm - z.b. http://www2-data.informatik.unibw-muenchen.de/Lectures/FT2001/EinfuehrungIIIa/folien9.pdf

Seite 9 & 10


----------



## Kollege vom Tim (10. Nov 2005)

Jo !

Also die pdf is ja ma gar nichtr hilfreich. Stell Dir einfach 2 absolute Dummis vor ! Wie würdest du denn die Hookmethode erklären ? ein Anwendungsbeispiel ?

Wir bekommen momentan nur Sachen an den Kopf geschmissen und sollen herausfinden was man damit anfangen kann.

also mach mal einen auf  :meld:  ! 

Soll nicht böse gemint sein, aber Google können wir auch bedienen..Aber wozu brauch man dann noch das Forum hier ?..alle Themen hier kann man auch in Google suchen und nachschlagen.. Aber ne ordentliche Meinugn von Einzelnen bekommt man nur im Forum..also biite keine verweise auf irgendwelche Links. Mit ner guten erklären (was man sich von hier ja erhofft) kann man wesentlich mehr anfangen !

Danke fürs Gespräche, nicht falsch auffasenn,

Liebe Grüße

Micha


----------



## bygones (10. Nov 2005)

Auch von "Dummies" kann man erwarten ein bissche Eigeninitiative zu zeigen. Viele Fragen lassen sich einfach durch googlen klären - meiner ansicht nach google ich da lieber finde bei den ersten Hits eine erklärung und fertig. 

Außerdem war im Beitrag von deinem Kollegen erwähnt, dass Google nichts gefunde hat, was einfach nicht stimmt.

Ok ich versuchs anhand der Folie die ich gelinkt habe zu erklären

1. Einschubmethode = Hook Methode

Man hat eine abstrakte Klasse mit versch. Methoden. Diese Klasse hat eine Methode, die wiederum eine andere abstrakte Methode aufruft. Man nennt eine solche Methode Schablonenmethode. Die konkrete Implementierung der aufgerufenen Methode ist dann die sog. Einschubmethode.

Vorteil von dem ganzen ist, dass man durch Vererbung der abstrakten Klasse das Verhalten des Objektes beliebig ändern kann, ohne das Grundgerüst der abstrakten Klasse ändern zu müssen !

in der Folie habt ihr sogar einen Quellcode der dies verdeutlicht


----------



## Kollege vom tim (10. Nov 2005)

geht doch *gg*

danke!

Wir muessen da erstmal reinfinden. Probieren geht über studieren


----------



## Guest (10. Nov 2005)

Die abstrakte Klasse und ihre abstrakten Methoden:

```
public abstract class eineKlasse {

	public abstract void xxx();
	
	public abstract void yyy();
	
}
```

Diese Klasse erbt:

```
public class ErbKlasse extends eineKlasse {

	
	public void xxx() {
	
	}

	
	public void yyy() {
		
	}
```


----------



## Kollege (10. Nov 2005)

ich denke meins is falsch.

Man hat eine abstrakte Klasse mit versch. Methoden. 
--> is klar

Diese Klasse hat eine Methode, die wiederum eine andere abstrakte Methode aufruft.
--> woher die abstrakte Methode ?

Man nennt eine solche Methode Schablonenmethode.
--> is klar

Die konkrete Implementierung der aufgerufenen Methode
--> wie ist das gemeint ?

.. ist dann die sog. Einschubmethode.

danke für eventuelle Aufklärung  :meld:


----------



## bygones (10. Nov 2005)

siehe Code des pdfs ^^


```
abstract class Collector {
    private int c = 0;
    
    protected abstract int op (int x, int y); // die abstrakte Methode
 
     public void collect (int x) {
         c = op(c,x); // Schablonen methode. Aufruf der abstrakten Methode
     }
}

class CountCollector extends Collector {
    protected int op (int x, int y) {
           return x+1;
   }
}

class SumCollector extends Collector {
       protected int op (int x, int y) {
             return x+y;
       }
}
```
die Methoden der letzten beiden klassen sind die Implementation der abstrakten methode, d.h. sie sind die Einschubmethode


----------



## Kollega (10. Nov 2005)

ok wir hams verstanden.

aber is jetzt nicht so reizvoll wie nen singleton , im nachhinnein gesehen.


----------



## bygones (10. Nov 2005)

Kollega hat gesagt.:
			
		

> ok wir hams verstanden.
> 
> aber is jetzt nicht so reizvoll wie nen singleton , im nachhinnein gesehen.


was haben die beiden miteinander zu tun ? 

sind komplett untersch. Stiefel


----------



## Guest (10. Nov 2005)

naja ich dachte des Hook dingens is was ganz besonderes.. 

am singleton habe ich mich schwerer getan, aber ich finde den jetzt auch sinnvoller. aber irgendwann werde ichd es Hook dingens mal brauchen und auch verstehen warum wie des machen sollten.


----------

