结构图
package henu.bean;
public interface Animal {
public void info();
}
package henu.bean;
public class Bird implements Animal{
@Override
public void info() {
// TODO Auto-generated method stub
System.out.println("this is a pink bird");
}
}
package henu.bean;
public class Cat implements Animal{
@Override
public void info() {
// TODO Auto-generated method stub
System.out.println("this is a white cat");
}
}
package henu.bean;
public class Dog implements Animal{
@Override
public void info() {
// TODO Auto-generated method stub
System.out.println("this is a black123 dog");
}
}
package henu.bean;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class IoCTest {
private static BeanFactory beanFactory;
public static void main(String[] args) {
// TODO Auto-generated method stub
Zoo zoo = new Zoo();
beanFactory = new ClassPathXmlApplicationContext("applicationContext.xml");
Animal bird = (Animal)beanFactory.getBean("bird");
zoo.setAnimal(bird);
zoo.add();
}
}
package henu.bean;
public class Zoo {
private Animal animal;
public Animal getAnimal(){
return animal;
}
public void setAnimal(Animal animal) {
this.animal = animal;
}
public void add(){
System.out.println("the animal is in the zoo and");
animal.info();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="bird" class = "henu.bean.Bird"/>
</beans>
运行结果: