5

sun.misc.Service次のような API に依存する古い (Java 6 より前の) コードがあります。

sun.misc.Service.providers(MyServiceProvider.class);

このクラスは、Java 9 で削除されています (内部化されているだけではありません)。

どの代替 Java SE API を使用できますか?

4

1 に答える 1

8

このクラスは、Java 6 でsun.misc.Serviceに置き換えられました。java.util.ServiceLoader

次のコード例は同等です。

Iterator<MyServiceProvider> = sun.misc.Service.providers(MyServiceProvider.class);

Iterator<MyServiceProvider> = java.util.ServiceLoader.load(MyServiceProvider.class).iterator();

コメントで指摘されているように、java.util.ServiceLoader は長い間使用されてきました (Java 6)。

于 2016-11-01T21:34:10.947 に答える