代码很简单,如下:
import java.io.*;
import java.net.*;
import java.util.*;
import javax.crypto.*;
import javax.crypto.spec.*;import org.apache.log4j.*;public class B
{
static void w1()
{
Logger logger = Logger.getLogger("w1") ;
BasicConfigurator.configure();
logger.debug("Hello");
logger.info("ttt");
}
public static void main(String[] args)
{
w1();
w1();
w1();
}
}第1个w1()往控制台输出是正常的
Hello
ttt
但为什么第2个w1()输出是
Hello
Hello
ttt
ttt
但为什么第3个w1()输出是
Hello
Hello
Hello
ttt
ttt
ttt
第n个w1()输出是n个Hello和ttt
好象因为name都是w1的问题,哪位大哥能给详细解释一下吗?
我试着如果每次Logger.getLogger(name)都不同的话就正确了
import java.io.*;
import java.net.*;
import java.util.*;
import javax.crypto.*;
import javax.crypto.spec.*;import org.apache.log4j.*;public class B
{
static void w1()
{
Logger logger = Logger.getLogger("w1") ;
BasicConfigurator.configure();
logger.debug("Hello");
logger.info("ttt");
}
public static void main(String[] args)
{
w1();
w1();
w1();
}
}第1个w1()往控制台输出是正常的
Hello
ttt
但为什么第2个w1()输出是
Hello
Hello
ttt
ttt
但为什么第3个w1()输出是
Hello
Hello
Hello
ttt
ttt
ttt
第n个w1()输出是n个Hello和ttt
好象因为name都是w1的问题,哪位大哥能给详细解释一下吗?
我试着如果每次Logger.getLogger(name)都不同的话就正确了
解决方案 »
- 页面加上".../W3C//DTD XHTML 1.0..."这样的声明eclipse运行慢,而且JSP解析变慢怎么解决啊,谢谢!!!
- 为什么输出的是1234而不是“welcome”呢?
- 如何求出一个数字集合中出现次数最多的那个数?
- 请问如何得到jdbTable中隐藏列中的值 ?
- 编译这个java程序,为什么标签可以正常显示,按纽就不可以正常显示呢?
- 方法上加synchronized的问题
- 得到的InputStream 怎么样把他变成为String????(紧急等待)谢谢!!!!
- stringbuffer 删除最后一个=号之前的文字
- 怎么用JAVA实现“SAVE AS”(注意是保存为,不是保存。)谢谢大家
- 关于从HTML页面上传文件的问题:
- 我把javamail API下载了下来,然后怎么安装它?
- 访问Anonymouse inner class 的方法。
wl是静态方法,在程序结束之前它的内存空间不会释放,
你的二次调用的时候,第一次内存空间还存在,所以内存中就有两个;
你把static修饰符去掉就行了
1.把static修饰符去掉就不能在main()调用了,
2.即使把static修饰符去掉变成new B().w1();new B().w1();结果还是不对的
3.我如果有个w2()跟w1()一样,那么w1();w2()结果还不对
那位高人给解释解释啊
private static final Logger logger = Logger.getLogger(B.class);
to liangzai6640459(亮仔): 谢谢,能不能说详细点啊
to nintha(素一): 谢谢,单独提出来结果还是一样,不对啊
w1();
w1();
Logger logger = Logger.getLogger("w1");
BasicConfigurator.configure();
logger.debug("Hello");
logger.info("ttt");
to humanity(很健忘了): 请问如果没有flush完,那我该如何解决呢,谢谢了