Hi leute,
ich komme gerade darauf, dass ich noch schlimme Mängel bei meinem OOP Verständnis habe
Ich möchte eine Instanz von ShortMessage über eine Socketverbindung durch einen ObjectOutputStream schicken. DAs ergab eine Fehlermeldung ... nicht serialisierbar.
Dann hab ich auf die schnelle mal das versucht:
und wollte dann einfach sowas machen wie:
Bloß gab es beim umcasten der ShortMessage in die SerializableSM eine ClassCastException.
Vielelicht kann mir jemand eine einfache Möglichkeit erklären wie ich so ein midievent serialisieren kann.
ich kann mir vorstellen, dass sowas gehört wie:
allerdings fänd ich die Version extends ShortMessage irgendwie schöner....
vielelicht kann mich jemand auf den richtigen Weg bringen.
beste grüße
Andi
ich komme gerade darauf, dass ich noch schlimme Mängel bei meinem OOP Verständnis habe
Ich möchte eine Instanz von ShortMessage über eine Socketverbindung durch einen ObjectOutputStream schicken. DAs ergab eine Fehlermeldung ... nicht serialisierbar.
Dann hab ich auf die schnelle mal das versucht:
Code:
import java.io.Serializable;
import javax.sound.midi.ShortMessage;
public class SerializableSM extends ShortMessage implements Serializable {}
und wollte dann einfach sowas machen wie:
Code:
void sendit(SerializableSM ssm){
oos.writeObject(ssm); // oos wäre hier der ObjectOutputStream
}
Bloß gab es beim umcasten der ShortMessage in die SerializableSM eine ClassCastException.
Code:
// PSEUDOCODE!!
MidiReceiver{
void send(ShortMessage message){ // diese Methode wird aufgrufen wenn ein midisignal vom MidiKeyboard kommt
sendit((SerializableSM)message)
}
}
Vielelicht kann mir jemand eine einfache Möglichkeit erklären wie ich so ein midievent serialisieren kann.
ich kann mir vorstellen, dass sowas gehört wie:
Code:
//PSEUDOCODE
class SerializableSM implements Serializable{
ShortMessage sm;
public SerializableSM(ShortMessage sm){
this.sm=sm;
}
getSm()
}
allerdings fänd ich die Version extends ShortMessage irgendwie schöner....
vielelicht kann mich jemand auf den richtigen Weg bringen.
beste grüße
Andi