zer*_*d0l 0 java design-patterns
我有2个不同的接口KafkaMetricsReporter名称实现它implementation1和implementation2.每个实现都有start启动少量线程的方法.
从另一个类我有两个实例implementation1和implementation2,然后运行start每一个类的方法.虽然我可以在给定的类中逐个执行,但是有更简洁的方法来执行此操作,以便将来如果我必须再添加一个实现,那么这样做会更容易.请给我一些指示.
更正:KafkaMetricsReporter是一个界面
这是你在找什么?不确定我是否理解Q.
KafkaMetricsReporter[] kmrs = new KafkaMetricsReporter[]{
new implementation1(),
new implementation2()
};
for( KafkaMetricsReporter kmr: kmrs ){
kmr.start();
}
Run Code Online (Sandbox Code Playgroud)