//创建文件输出流
PrintStream ps=new PrintStream("./log.txt");
//设置新的输出流 System.setErr(ps);
System类的out、err、in成员变量都是final类型的,不能直接复制,要通过setOut()、setErr(),setIn()方法来改变流。上例是通过setOut()方法改变输入流输入位置,将输出重定向到一个固定的目录,实现程序日志
e.printstacktrace 默认用的就是System的输出
public class PersistenceException {
public PersistenceException(Exception e){
// 这里对错误信息进行持久化
System.out.println("持久化代码放这里...");
// 如果需要在控制台同时打印出日志的话
e.printStackTrace();
}
/**测试主方法*/
public static void main(String[] args){
int a = 0;
int b = 0;
try {
int c = a/b;
}catch (Exception e){
new PersistenceException(e);
}
}
}
AST 修改抽象语法树
不管如何,都是需要逐个改,不如一次修改好。。。。。。。。。