您的位置:首页 > 编程语言 > Java开发

设计模式之—抽象工厂模式(Abstract Factory)-Java实现

2011-12-06 23:33 746 查看
抽象工厂模式(Abstract Factory):

提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。

public interface Person{
}
public class Student implements Person{
}
public class Teacher implements Person{
}
abstract class PersonFactory{
abstract  Person  producePerson();
public static PersonFactory getInstance(String classname) {
PersonFactory personFactory = null;
try {
personFactory = (PersonFactory) Class.forName(classname).newInstance();
} catch (Exception e) {
e.printStackTrace();
}
return personFactory ;
}
}

public class StudentFactory extends PersonFactory {
@Override
public Person producePerson() {
return new Student();
}
}

public class TeacherFactory extends PersonFactory {
@Override
public  Person producePerson() {
return new Teacher();
}
}

public class AbstractFactory{
public static void main(String args[])throws Exception{
Properties p = new Properties();
p.load(new FileInputStream("1.properties"));
String str = p.getProperty("Student");
Person p = PersonFactory.getInstance(str);
p.producePerson();
}
}


-------------------------------------------------------------------------------

1.properties代码:

Student=com.factory.abstract.Student  

Teacher=com.factory.abstract.Teacher 

 上面就介绍完了抽象工厂模式,下期预告,单例模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息