hello word设计模式
来源:互联网 发布:淘宝刷手一天收入多少 编辑:程序博客网 时间:2024/05/23 11:49
接口:
package ISyaHi;
public interface ISayHi {
public String SayHi(String name);
}
实现类:
package SayHiImp;
import ISyaHi.ISayHi;
public class SayHiEnImp implements ISayHi {
public SayHiEnImp()
{
}
public String SayHi(String name) {
return "Hello! "+name.toUpperCase()+" This JAVA Word!";
}
package SayHiImp;
import ISyaHi.ISayHi;
public class SayHiZhImp implements ISayHi {
public SayHiZhImp()
{
}
public String SayHi(String name) {
return "你好! "+name.toUpperCase()+" 这是JAVA世界!";
}
}
控制类:
package SayHiController;
import ISyaHi.ISayHi;
import XMLPrass.XmlPrass;
public class Controller {
private ISayHi iSatHi;
private XmlPrass xmlPrass;
public Controller ()
{
try{
xmlPrass=XmlPrass.newInstance();
if(xmlPrass.sax().equals("ZH")){
iSatHi=(ISayHi)Class.forName("SayHiImp.SayHiZhImp").newInstance();
}else{
iSatHi=(ISayHi)Class.forName("SayHiImp.SayHiEnImp").newInstance();
}
}catch(Exception e){
System.out.println(e);
}
}
public ISayHi getSayHi()
{
return iSatHi;
}
}
XML解析类:
package XMLPrass;
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
public class XmlPrass {
private static XmlPrass xmlPrass=null;
private XmlPrass(){}
public String sax() {
String result="";
try{
DocumentBuilderFactory builderFactory=DocumentBuilderFactory.newInstance();
DocumentBuilder builder=builderFactory.newDocumentBuilder();
Document document=builder.parse(new File("src/MyXml.xml"));
Element element=document.getDocumentElement();
NodeList nl=element.getElementsByTagName("say-configuation");
result=nl.item(0).getAttributes().getNamedItem("src").getTextContent();
}catch(Exception e){
System.out.println(e);
}
return result;
}
public static XmlPrass newInstance(){
if(xmlPrass==null){
xmlPrass=new XmlPrass();
}
return xmlPrass;
}
}
测试类:
package SayHiMain;
import SayHiController.Controller;
public class SayHi {
/**
* @param args
*/
public static void main(String[] args) {
Controller controller=new Controller();
System.out.println(controller.getSayHi().SayHi("jack"));
}
}
MyXml.xml
<?xml version="1.0" encoding="UTF-8"?>
<say>
<say-configuation src="EN"/>
<say-class name="ZH" class="SayHiImp.SayHiZhImp" />
<say-class name="EN" class="SayHiImp.SayHiEnImp" />
</say>
- hello word设计模式
- HELLO WORLD中的设计模式
- hello word
- hello word
- Hello,Word?
- hello word!
- Hello Word
- hello word
- hello word
- hello word!
- hello word
- Hello Word
- hello word!
- Hello Word
- Hello word!
- Hello word!
- Hello word
- Hello Word!
- struts2.0与struts2.1配置区别
- Java开发者需坚守的基本原则
- windows 7 下引导grub for dos、linux
- SQL操作全集
- 新学期,新气象?
- hello word设计模式
- 以Python Imaging Library 进行影像资料处理PIL
- 五大非常见Linux命令
- 真气运行法五步功成
- 今日开博,争取每日都有进步!
- window平台直接访问unix中文文件路径时的变通方法,使用php发送
- [已解决]Cannot retrieve repository metadata (repomd.xml) for repository:atrpms.Please verify its path and try again
- 看到的一道面试题,很有趣,与大家分享zt
- php缓存技术详解