1 package 多态.工厂模式;
2
3
4 public abstract class Person {
5
6 abstract void sayhello();
7
8 }
package 多态.工厂模式;
public class Chinese extends Person {
@Override
void sayhello() {
System.out.println("你好");
}
}
package 多态.工厂模式;
/**
* 美国人类
*/
public class America extends Person{
void sayhello() {
System.out.println("你好");
}
}
package 多态.工厂模式;
/**
* 工厂类 通过工厂模式拿到对象
*/
public class Factory {
public Person getperson(String ch){
if("china".equals(ch)){
return new Chinese(); // 返回new一个对象 返回的是对象的地址 相当于输入China 输出了Person china = new Chinese()
}else {
return new America();
}
}
}
package 多态.工厂模式;
public class TestFactory {
public static void main(String[] args) {
Factory factory = new Factory();
Person china = factory.getperson("china");
china.sayhello();
}
}