>我想声明一个变量,它可以是x.y.z.z.y.Foo
、x.y.z.z.y.Bar
或x.y.z.z.y.Baz
的对象。如果这些类由我维护,我会创建一个类(例如x.y.z.z.y.Nice
(,所以我的变量将被声明为Nice variable
。但是x.y.z.z.y
包是一个 3rd 方库(确切地说是 https://github.com/kubernetes-client/java(,所以我无法使这个库的类实现Nice
接口。
有没有办法定义一些伪接口/类,以确保变量可以容纳第三方库的某些类的对象?
提前感谢!
我可能会写一个外观类来封装第 3 方包的使用。然后,该外观类和其他类都可以实现Nice
接口。
(附带的好处是,如果您决定切换到使用其他第三方软件包而不是当前软件包,则只需更改外观类,而不是使用它的所有内容。