我有那两个接口
public interface TransferListener<S> {
...
}
public interface BandwidthMeter {
...
}
和这个实现:
public final class DefaultBandwidthMeter implements BandwidthMeter, TransferListener<Object> {
....
}
我如何声明DefaultBandwidthMeter的pascal版本?
现在我宣布这样:
JDefaultBandwidthMeterClass = interface(JBandwidthMeterClass)
['{2B9F65F5-8EAB-466A-9A2E-DDD9CA88F807}']
end;
[JavaSignature('com/google/android/exoplayer2/upstream/DefaultBandwidthMeter')]
JDefaultBandwidthMeter = interface(JBandwidthMeter)
['{D6A32707-D8F6-458B-AAB6-926A523D1A95}']
end;
TJDefaultBandwidthMeter = class(TJavaGenericImport<JDefaultBandwidthMeterClass, JDefaultBandwidthMeter>) end;
但问题是这个声明并不关心TransferListener,也不适用于以下函数:
public DefaultDataSourceFactory(TransferListener<? super DataSource> listener) {
...
}
那我该怎么办?