Ich arbeite gerade an der Erstellung eines Mods für Minecraft. Ich versuche, eine Objektklasse zu erstellen, mit der ich Projektileinheiten feuern kann. Dies würde kurz vor dem Testen der Entitäten stattfinden, bevor eine individualisierte Klasse erstellt wird. Ich versuche, eine Eingabe in dem Konstruktor zu verwenden, der jede untergeordnete Entität meiner übergeordneten Klasse für Projektileinheiten (AbstractEntityProjectile
) als den Typ übernimmt.minecraft: Wie man eine einzelne Item-Klasse erstellt, um mehrere Entity-Typen auszulösen
Ich habe dies versucht, sowohl mit ?
und T
:
public EntityGun(<? extends AbstractEntityProjectile> entity) {
/* code */
}
Gibt es eine andere Syntax, dies zu tun? Oder muss ich das anders machen?
verwenden Sie einfach public EntityGun (AbstractEntityProjectile entity). Dadurch wird ein Verweis auf ein Objekt übergeben, das die Klasse Abstract erweitert haben muss. Die Referenz lautet jedoch "AbstractEntityProjectile". Sie können also nur Methoden aus der Klasse aufrufen, es sei denn, Sie konvertieren in die Klasse, die die abstrakte Klasse implementiert hat. – Zachary