Warum verwenden Sie nicht eine Obergrenze in Ihrer generischen Parametrisierung für E
?
Wie in:
private <E extends Serializable> void writeEvent(ObjectOutputStream out,E obj) {
// etc.
}
Die Verwirrung hier wäre das Serializable
ist eine Schnittstelle und kann nicht nach Klassen "erweitert" werden (aber sie kann von anderen Schnittstellen erweitert werden, wie Thomas bemerkt), aber die Obergrenze ist noch gültig.
Dies impliziert natürlich, dass Ihre E
S Will brauchen implementieren Serializable
, oder implementieren eine Schnittstelle, die sich erstreckt Serializable
.