我正在实现一个库,该库将被许多不同类型的媒体播放器使用。我需要使用一种getPosition
因每个用户的视频播放器而异的方法。
目前,为了实现这一点,我已将我的库设为用户必须扩展的抽象类,然后getPosition
用他们用来获取媒体播放器位置的任何对象/方法覆盖该方法。
我正在努力使我的类不必是抽象的,并且他们可以getPosition
为我的库定义此方法而不必扩展我的抽象类(即)我不希望我的库类是抽象的。
我已经研究过使用反射,但我正在努力解决它,因为直到运行时我才知道类名/方法名/参数,我想要媒体播放器对象的特定实例的位置,这样我就可以获得最新的位置.
Java/Android 编程范式有什么好的做法?
反思是要走的路吗?如果是这样,我可以看到这个特定实例的一些示例代码(未知的类名/方法名/我的导入库使用的参数等......)
或者有没有更好的方法来完成这个/让我的类抽象成 Java 的方式?
如果用户不必扩展我的类并且可以只在对象上调用某种 setGetPosition() 方法,我更愿意再次这样做。
编辑:简单地说:我希望能够在我的库中使用未知类的 getPosition 方法,但我不希望我的整个类都是抽象的