Wie kann man in Java eine Funktion als Argument einer anderen Funktion übergeben?
- Java Methode als Parameter übergeben (17 Antworten )
Antworten
Zu viele Anzeigen?Ich weiß, dass dies ein ziemlich alter Beitrag ist, aber ich habe eine andere, etwas einfachere Lösung. Sie könnten eine weitere Klasse erstellen und diese abstrakt machen. Als nächstes erstellen Sie eine abstrakte Methode, die Sie nach Belieben benennen können. In der ursprünglichen Klasse machen Sie eine Methode, die die neue Klasse als Parameter nimmt, in dieser Methode rufen Sie die abstrakte Methode auf. Es wird ungefähr so aussehen.
public class Demo {
public Demo(/.../){
}
public void view(Action a){
a.preform();
}
/**
* The Action Class is for making the Demo
* View Custom Code
*/
public abstract class Action {
public Action(/.../){
}
abstract void preform();
}
}
Jetzt können Sie eine Methode innerhalb der Klasse wie folgt aufrufen.
/...
Demo d = new Demo;
Action a = new Action() {
@Override
void preform() {
//Custom Method Code Goes Here
}
};
/.../
d.view(a)
Wie gesagt, ich weiß, dass es alt ist, aber ich denke, dass dieser Weg ein wenig einfacher ist. Hoffentlich hilft es.
- See previous answers
- Weitere Antworten anzeigen