精品文档 你我共享
public interface InvesterObserver { void update(); } import java.util.ArrayList; public abstract class StockSubject { protected ArrayList
精品文档 你我共享
import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class XMLUtil { public static Object getBean (String tagName) { try { //创建DOM文档对象 DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document document = docBuilder.parse(new File(\ //获取包含类名的 文本节点 NodeList nl = document.getElementsByTagName(tagName); Node classNode = nl.item(0).getFirstChild(); String className = classNode.getNodeValue(); //通过类名生成实例对象并将其返回 @SuppressWarnings(\Class clazz = Class.forName(className); Object obj = clazz.newInstance(); return obj; } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); AAAAAA
精品文档 你我共享
}
2. 类图:
AAAAAA
精品文档 你我共享
MySubject#+++{abstract} observerList: ArrayList
public class Client { public static void main(String[] args) { MySubject subject = new Thermosensor(); MyObserver cautionLight = new CautionLightAdapter(); MyObserver annunciator = new AnnunciatorAdapter(); MyObserver securityDoor = new SecurityDoorAdapter(); MyObserver insulatedDoor = new InsulatedDoorAdapter(); subject.attach(cautionLight); subject.attach(annunciator); subject.attach(securityDoor); subject.attach(insulatedDoor); subject.warning(); } } import java.util.ArrayList; AAAAAA
相关推荐: