Noteringer i Java er nyttige, når du har brug for en metode til at acceptere en henvisning til en anden metode som et argument. For eksempel kunne en graf, der viser metode tage en " synd " eller " cosinus " funktion som en parameter. I Java kan du ikke sende funktionspointere som du kan i C, så du skal simulere tilbagekald ved brug af grænseflader. Du kan passere en grænseflade som et argument , og derefter den tilsvarende implementering giver den version af koden til at udføre . Instruktioner
1
Åbn din Java -filen i en editor som Eclipse, Netbeans eller JBuilder X.
2
Opret en grænseflade og to klasser , der implementerer interfacet ved at tilføje efter ovenstående kode din vigtigste funktion : Hej
grænseflade Frugt {
void callback_method ();
}
class Apple implementerer Frugt {
< p > public void callback_method () {
System.out.println ( " Callback - Apple ");
}
}
class Banana implementerer Frugt {
public void callback_method () {
System.out.println ( " Callback - Banana ");
}
}
< p> Hver klasse , der implementerer interfacet skal have en version af metoden i grænsefladen.
3
Opret en " ringer " klasse, der har en metode til at indlede tilbagekald ved at tilføje kode : Hej
class Caller {
offentligt register ( frugt Frugt ) {
fruit.callback_method ();
}
}
eksempel kan " register "-metoden tager enten en "Apple" eller " Banana " som sit input og derefter udføre matcher " callback_method " for denne version.
4
Opret " Caller ", " Apple " og " Banana " objekter , og derefter sende begge versioner af "frugt " til " Caller " objektets " register "-metoden , ved at tilføje følgende kode som din vigtigste funktion : Hej
public static void main ( String [] args ) {
Caller ringer = new Caller ();
Frugt æble = new Apple ( ) //Apple version af Fruit
< p > Frugt banan = new Banana () //Banana version af Fruit
caller.register (apple ) //displays " tilbagekald - Apple "
caller.register ( banan ) ; //viser " tilbagekald - Banan "
}
Dette lader dig undgå at skulle oprette flere versioner af " Caller " klasse for hver implementering. Enhver implementering af "frugt " kan overføres til " Caller ", som indlæser den tilsvarende tilbagekald metode til denne version.
5.
Gem Java -filen , kompilere og køre programmet for at se tilbagekald . KAYAK