package test2;
public class Test {
Log log = new Log();
public void a1() {
log.enter();
a2();
log.exit();
}
public void a2() {
log.enter();
a3("a");
log.exit();
}
public void a3(String s) {
log.enter();
a4();
log.exit();
}
public void a4() {
log.enter();
log.exit();
}
/**
* @param args
*/
public static void main(String[] args) throws Exception {
Test t = new Test();
t.a1();
}
}
class Log {
public void enter() {
//System.out.println("enter");
printTrace("enter");
}
public void exit() {
//System.out.println("exit");
printTrace("exit");
}
private void printTrace(String s) {
try {
throw new Exception("xxxx");
} catch (Exception ex) {
StackTraceElement[] stackTraces = ex.getStackTrace();
if (stackTraces.length > 2) {
System.out.println( s + " " +getMessage(stackTraces[2]));
}
}
}
private String getMessage(StackTraceElement st) {
return st.getClassName() + "." + st.getMethodName();
//return st.toString();
}
}
运行后输出如下:
enter test2.Test.a1
enter test2.Test.a2
enter test2.Test.a3
enter test2.Test.a4
exit test2.Test.a4
exit test2.Test.a3
exit test2.Test.a2
exit test2.Test.a1
分享到:
相关推荐
在C++编程语言中,异常处理(Exception Handling)是一个至关重要的概念,它允许程序员优雅地处理程序运行时发生的错误情况,而不是让程序崩溃。"Exception C++ & More Exception C++"可能是指两本关于深入理解和...
### C++异常处理技巧详解 #### 一、C++异常处理的重要性 在现代软件开发中,尤其是对于那些需要长时间稳定运行的应用程序来说,确保代码的健壮性和稳定性至关重要。异常处理作为C++语言的一项重要特性,能够有效地...
无论对于自身的代码安全还是良好的用户体验出发,这种现象都是不好的,一个健壮,成熟的应用程序应该有良好的容错能力,并且在出错后自动做出相应BUG的处理,记录,本文和大家探讨这种情况的一般处理方法,老鸟请...
Java异常处理是编程中至关重要的一个环节,它用于在程序执行过程中处理错误和不正常的情况。异常(Exception)是程序运行时出现的问题,不同于逻辑错误,逻辑错误在编译阶段就能发现,而异常则通常在运行时才会暴露...
异常处理是编程语言中的一个重要概念,用于捕获并处理这些错误,以确保程序的稳定性和可靠性。 描述中提供的链接指向了一篇关于技术博客的文章,虽然具体内容未给出,但我们可以推测这篇博客可能讨论了如何在Java或...
### Oracle 存储过程 Exception 异常处理详解 #### 1. 异常处理概念 在 Oracle 存储过程中,异常处理是一项非常重要的技术,它能够帮助开发...正确地理解和应用异常处理技巧,能够显著提高存储过程的稳定性和健壮性。
这个错误意味着尝试执行的操作无法完成,因为遇到了一个无效的对象或者DOM元素不存在。在Web开发中,DOM是HTML或XML文档的结构化表示,允许通过JavaScript或类似的客户端脚本语言来动态更新页面内容。 描述中的...
描述中的链接指向了一个博客文章,虽然具体内容没有给出,但我们可以推测这篇文章可能详细解释了一个特定的异常情况或者展示了如何有效地处理Java中的异常。iteye是一个知名的IT技术社区,博主通常会分享他们的编程...
"VC/C++源码, FileException" 提供了一个学习VC++异常处理机制的实例,这对于初学者来说是极具价值的。 在C++中,异常处理是通过`try`、`catch`和`throw`关键字来实现的。当程序在`try`块中遇到无法正常处理的错误...
总的来说,掌握C#的异常处理技巧和方法对于编写健壮的代码至关重要。合理使用`try-catch-finally`结构,理解异常的继承层次,以及何时和如何抛出异常,都是提升程序质量的关键步骤。通过这些技巧,开发者可以更好地...
3. **异常链**:当一个异常在处理另一个异常的过程中被抛出,它们之间会形成一个链,这有助于追踪错误的源头。 4. **自定义异常**:开发者可以通过继承`Exception`类或其子类来自定义异常,以便更精确地表示应用...
在本项目中,我们主要关注的是使用Java编程语言来实现一个简单的租车系统。这个系统的主要功能包括展示可租车辆信息,允许用户选择车型并指定租车数量,以及展示租车清单。以下将详细介绍这些功能的实现以及可能涉及...
本文将围绕Java异常处理机制展开,探讨其核心概念、分类、处理技巧,并简述自定义异常类的创建方法,以帮助读者在实际开发中更有效地进行异常处理。 一、什么是异常? 异常是Java程序在运行过程中发生的不正常事件...
【JAVA编程中异常处理的方法和技巧研究】 Java作为一种高级的、可移植且跨平台的编程语言,广泛应用在各个领域。随着现代网络信息技术的发展,异常处理的重要性日益凸显,因为任何编程过程中都可能出现各种不可预知...
开发者可以通过订阅这个事件来提供一个统一的异常处理逻辑,避免程序无响应或崩溃。例如,可以记录错误日志,显示用户友好的错误消息,甚至尝试恢复执行。 跟踪(Tracing)和调试是诊断应用程序问题的关键工具。在...
例如,在一个异常从抛出点传播到处理点的过程中,如果中间代码未能正确处理异常的传播,则可能导致程序状态受损,进而影响整体软件的可靠性。 #### 编写安全的异常处理代码 编写安全的异常处理代码并非仅仅涉及...
《Node.js硬实战 115个核心技巧》是一本深度挖掘Node.js技术的书籍,旨在帮助开发者掌握Node.js的核心技能并提升实际开发能力。Node.js是基于Chrome V8引擎的JavaScript运行环境,它以其非阻塞I/O、事件驱动的特性在...
异常处理是编程中的一个重要概念,特别是在Java这样的面向对象的语言中,异常处理机制提供了处理运行时错误的有效方式。根据给定的文件信息,我们可以深入探讨几个关键的知识点: ### 异常的基本概念 异常是指在...