使用eclipse创建1、芯片类,包括提供芯片方法;2、手机类,包括组装手机方法,依赖芯片类的提供芯片方法;配置Spring的两个依赖关系,使用main方法调用手机类的组装方法
时间: 2024-09-23 09:01:17 浏览: 33
在Eclipse中创建一个多态的应用程序,首先你需要定义两个类:芯片类Chip和手机类Phone。我们假设Chip是一个抽象基类,它包含了一个返回芯片信息的方法:
```java
// 芯片类 Chip.java
public abstract class Chip {
public abstract String getChipInfo();
}
```
接着,你可以创建一个具体的芯片子类,比如Microchip,它实现了Chip的抽象方法:
```java
// 微芯片 Microchip.java
public class Microchip extends Chip {
@Override
public String getChipInfo() {
return "这是一款微处理器";
}
}
```
然后,手机类Phone有一个构造函数,接收Chip类型的对象,并通过多态调用getChipInfo()方法:
```java
// 手机类 Phone.java
public class Phone {
private Chip chip;
public Phone(Chip chip) {
this.chip = chip;
}
public void assemblePhone() {
System.out.println("正在组装手机,使用的芯片信息:" + chip.getChipInfo());
}
}
```
对于Spring框架的依赖配置,虽然在Eclipse中直接操作Spring配置文件(如applicationContext.xml)已经过时,现在更倾向于使用Java Configuration。首先,在Spring Boot项目中,添加对Spring和Spring Beans的依赖。然后,可以使用@Component注解声明Phone和Chip bean,Spring会自动管理它们之间的依赖:
```java
// Spring配置 ApplicationConfig.java
@Configuration
public class ApplicationConfig {
@Bean
public Chip microchip() {
return new Microchip();
}
@Bean
public Phone phone(Chip chip) {
return new Phone(chip);
}
}
```
最后,在主方法中,你可以注入并调用assemblePhone()方法:
```java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Main implements CommandLineRunner {
@Autowired
private Phone phone;
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
@Override
public void run(String... strings) throws Exception {
phone.assemblePhone(); // 这里会打印出"正在组装手机,使用的芯片信息:这是一款微处理器"
}
}
```
阅读全文