package com.cheng.zenofdesignpatterns.patterns.factorymethod.nvwa; /** * 人类创建工厂 */ public class HumanFactory extends AbstractHumanFactory { @Override public <T extends Human> T createHuman(Class<T> _Clazz) { // 定义一个产生的人种 Human human = null; try { // 产生一个人种 human = (Human) Class.forName(_Clazz.getName()).newInstance(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } return (T) human; } }