I have created a class named Player and a class named Car , which has a method called isOwner(Player player). It has a constructor that is like this:
public Car(String name, Action<Player> action) {
this.name=name;
this.action = action;
}
Now in my main code I want to do this:
Car car1 = new Car("BMW", (input ->{
if (this.isOwner(input)){
// code
}
}));
But here this references the class I am writing inside (e.g. Main class); also if I put car1 instead of this, it will give error saying car1 may not be initialized.
I would go for a good old-fashioned unfashionable anonymous inner class.
Car car1 = new Car("BMW") {
@Override protected action(Player input) {
if (isOwner(input)) {
// code
}
}
};
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With