// Java IOC 示例代码
// 1. 定义接口
public interface MessageService {
void sendMessage(String message, String receiver);
}
// 2. 实现类
public class EmailService implements MessageService {
@Override
public void sendMessage(String message, String receiver) {
System.out.println("Email sent to " + receiver + " with Message=" + message);
}
}
// 3. 使用IOC容器管理依赖
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
// 4. 配置类,使用注解配置Bean
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class AppConfig {
@Bean
public MessageService getMessageService() {
return new EmailService();
}
}
// 5. 测试类
public class IocExample {
public static void main(String[] args) {
// 创建Spring上下文
ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
// 从上下文中获取MessageService实例
MessageService service = context.getBean(MessageService.class);
// 调用业务方法
service.sendMessage("Hello World", "example@example.com");
}
}
MessageService
是一个简单的接口,定义了发送消息的方法。EmailService
实现了 MessageService
接口,并提供了具体的实现逻辑。ApplicationContext
来管理对象的创建和依赖注入。AppConfig
使用 @Configuration
注解来定义配置类,并通过 @Bean
注解来声明 MessageService
的实现类 EmailService
。IocExample
类展示了如何使用 Spring 的 IOC 容器来获取 MessageService
的实例并调用其方法。这段代码展示了如何在 Java 中使用 Spring 框架的 IOC(控制反转)机制来管理依赖关系。
上一篇:java中循环语句有哪些
下一篇:java 可选参数
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站