读书人

j2se工程中有多个main()步骤

发布时间: 2012-09-23 10:28:11 作者: rapoo

j2se工程中有多个main()方法
[color=cyan] 学习java以来,都是按照书上的一些例子,做一些练习。写的东西都是按照书上说的思路,所以很少发现工程方面的问题。
最近在做一个网站的维护,我发现他们的源码里,很多的类都写了main()方法。这些类的一个特点都是在工程启动的时候就需要加载的,而且main()方法的作用也差不多是执行一下当前类的构造函数。
按照自己的理解,一个工程一般只有一个main()方法,没有必要写多个主方法。但由于代码是高人所写,所以让我觉得很不好理解的。希望知道的朋友帮忙指点哈子。[/color] ex.getMessage());
}

//等待
try {
sleep(2);
}
catch (InterruptedException ex2) {
}
}
}


//初始化udp侦听,端口号
private boolean init(){
try {
int iport=getPort();
if(iport==0){
loginfo.setFatal("取UDP侦听端口号出错!");
return false;
}
//设置端口号
datasocket = new DatagramSocket(iport);
//设置缓冲池
datasocket.setReceiveBufferSize(4096);
}
catch (SocketException ex) {
loginfo.setFatal("初始化socket时发生SocketException错误:" + ex.getMessage());
return false;
}
return true;
}

//从配置文件中读取端口号
private int getPort(){
try {
SAXBuilder sb = new SAXBuilder();
Document doc = null;
// doc = sb.build(getClass().getResourceAsStream("config/realconf.xml"));
doc = sb.build(new FileReader("realconf.xml"));
Element el = doc.getRootElement();
if (el.getName().compareToIgnoreCase("realconf") != 0) {
return 0;
}
List lst = el.getChildren();
for (int i = 0; i < lst.size(); i++) {
el = (Element) lst.get(i);
if (el.getName().compareToIgnoreCase("reallisten") == 0) {
Element portel = el.getChild("port");
return Integer.parseInt(portel.getText() == null?"0":
portel.getText());
}
}
}
catch (JDOMException ex) {
loginfo.setError("取UDP实时数据端口时出FileNotFoundException错:"+ex.getMessage());
return 0;
}
catch(IOException ex){
loginfo.setError("取UDP实时数据端口时出IOException错:"+ex.getMessage());
return 0;
}
return 0;
}
}现在我也觉得应该是做测试做的.

读书人网 >网络基础

热点推荐