请问既会JAVA又会VC的大侠:JAVA调试时是否有类似于VC中的TRACE功能 No.you can emit the debug message for release! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 又出新毛病了JDeveloper ver 1.3.2中,我用file->new定义了一个新菜单类,在可视化编辑菜单时,出来的却是对话框,菜单没办法可视化编辑了,而前两天还是可以的,why?分会一直向上加 回复时请点“管理”进来,正常进来有些回复看不到to Tivoli你的意思是说1.4之后的才不会在release版中存在debug信息吧,可我现在的版本是1.2,还没有楼上各位说的assert信息呢 自己做一个就是了,很简单的。private boolean debugFlg = flase;public void setDebugFlg(boolean argDebugFlg) { debugFlg = argDebugFlg;}public debug(String argStr) { if (debugFlg) { System.out.println("[TRACE]" + argStr); }}在Release中设置debugFlg为flase,不会debug不会被输出了。 这样也会把debug这个函数调用及其中的if判断语句编译了,只不过不输出罢了,而我是想有没有与MFC中的TRACE宏对应的JAVA方法来实现#ifdef _DEBUG// dosomething#endif这种MFC中的的功能,即在release版本中根本不编译这部分代码 你可以在虚拟机参数中设置debugFlg的值,决定输不输出debug信息了。但是这个方法的缺陷是,你每一个类都要写一个这种方法了。否则就不能用了。也可以把它做成静态方法就没有这么简单了。例子如下:import java.util.Properties;public class Test { PIManageFrame pimf; public Test() { debug("TestDebug"); } public static void debug(String argStr) { Properties p = System.getProperties(); String debugFlg = (String)p.get("DEBUGFLG"); if (debugFlg.equals("0")) { System.out.println("[TRACE]" + argStr); } } public static void main(String[] args) { Properties p = System.getProperties(); p.setProperty("DEBUGFLG", "0"); Test t = new Test(); }} 在java中没有预处理这就没办法了。这跟java语言本身有关的,要不java的效率怎么上不去呀。我们现在做java项目都是用这种方法做debug了 谢谢 KillAllError ,再等一下看看有没有什么其它方法 java问题求助 java按回车 java---如何一个用户创建多个账号? 不太会用this关键字!求救 有关同步--怎么向数据库中插入时间 求救JPanel cons =(JPanel)chooser.getComponent(2)错误?怎么解决?? 怎样在".txt"文本中以行为单位插入、读取数据? 谁能帮我看看程序有什么问题吗? c3p0异常 小白求助,怎么提取win7中的超大图标 滴水之恩,涌泉相报!!! 菜鸟问题
JDeveloper ver 1.3.2中,我用file->new定义了一个新菜单类,在可视化编辑菜单时,出来的却是对话框,菜单没办法可视化编辑了,而前两天还是可以的,why?
分会一直向上加
to Tivoli
你的意思是说1.4之后的才不会在release版中存在debug信息吧,可我现在的版本是1.2,还没有楼上各位说的assert信息呢
debugFlg = argDebugFlg;
}public debug(String argStr) {
if (debugFlg) {
System.out.println("[TRACE]" + argStr);
}
}在Release中设置debugFlg为flase,不会debug不会被输出了。
#ifdef _DEBUG
// dosomething
#endif
这种MFC中的的功能,即在release版本中根本不编译这部分代码
但是这个方法的缺陷是,你每一个类都要写一个这种方法了。否则就不能用了。
也可以把它做成静态方法就没有这么简单了。
例子如下:import java.util.Properties;public class Test {
PIManageFrame pimf; public Test() {
debug("TestDebug");
} public static void debug(String argStr) {
Properties p = System.getProperties();
String debugFlg = (String)p.get("DEBUGFLG");
if (debugFlg.equals("0")) {
System.out.println("[TRACE]" + argStr);
}
} public static void main(String[] args) {
Properties p = System.getProperties();
p.setProperty("DEBUGFLG", "0");
Test t = new Test();
}
}
这跟java语言本身有关的,要不java的效率怎么上不去呀。
我们现在做java项目都是用这种方法做debug了