Originariamente inviato da cuccagna
Quindi non hai il sorgente ma il file .class , dunque la mia precedente soluzione è tortuosa.
Seguendo il consiglio di Lele.... crei un oggeto di CiscoRTPInputStartedEv.
Purtroppo vedendo l'errore che ti da si capisce che CiscoRTPInputStartedEv è una classe astratta e non è possibile creare istanze(oggetti) di una classe astratta.
Potresti modificare la classe CiscoRTPInputStartedEv rendendola concreta ma a quanto ho capito non hai il file .java ma solo il bytecode cioè il .class
Come possiamo risolvere il problema?
Una classe astratta può avere dei metodo concreti.
Ci sono due casi:
1) Se il metodo getCallID() è astratto in CiscoRTPInputStartedEv allora ci deve senz altro essere una sottoclasse che implementa il metodo getCallID().
In questo caso puoi fare Sottoclasse oggetto = new Sottoclasse();
e poi oggetto.getCallID() o anche:
CiscoRTPInputStartedEv oggetto = new Sottoclasse();
oggetto.getCallID()
2) se getCallID() è concreto(implementato) in CiscoRTPInputStartedEv la cosa è più problematica e ci sono due sottocasi:
2.1)Il metodo è implementato(sovrascritto) anche in una sottoclasse e per come è implementato nella sottoclasse va bene per i tuoi scopi.
In questo caso devi fare lo stesso che hai fatto al punto 1
2.2)getCallID() è implementato solo in CiscoRTPInputStartedEv.
In questo caso devi creare tu una nuova classe che estende CiscoRTPInputStartedEv(e devi implementare tutti i metodo astratti di CiscoRTPInputStartedEv).
Nel sovrascrivere getCallID() devi usare la stessa firma che c'è nella superclasse CiscoRTPInputStartedEv e per richiamare le funzionalità di getCallId di CiscoRTPInputStartedEv devi usare super();
potresti scrivere:
public tipoDiRitorno getCallID()
{
return super();
}
Poi crei un oggetto così:
CiscoRTPInputStartedEv oggetto = new sottoclasseDaTeCreata();
oggetto.getCallId();
Spero di essere stato chiaro