直接上源码,打出当前执行的类名,方法名以及代码所在行。
package org.apache.log4j.test; public class TestUtil { public static void LogUtil(Class clazz, Object message) { // String clzz = // Thread.currentThread().getStackTrace()[1].getClassName(); // System.out.println(clazz.getSimpleName()); // String method = // Thread.currentThread().getStackTrace()[1].getMethodName(); // String clazz1 = clazz.getClass().getName(); // System.out.println(clazz.getMethods()[0]); StringBuffer sb = new StringBuffer(); StackTraceElement[] stacks = new Throwable().getStackTrace(); int stacksLen = stacks.length; sb.append("当前执行的类是【" + stacks[1].getClassName()).append("+】在第") .append("【").append(stacks[1].getLineNumber()).append("】") .append("】方法名【" + stacks[1].getMethodName()); } public static void LogUtil() { StringBuffer sb = new StringBuffer(); StackTraceElement[] stacks = new Throwable().getStackTrace(); int stacksLen = stacks.length; sb.append("当前执行的类是:" + stacks[1].getClassName()).append(";在第") .append("【").append(stacks[1].getLineNumber()).append("】") .append(";方法名:" + stacks[1].getMethodName()); System.out.println(sb.toString()); } public static void LogUtil(Object message) { StringBuffer sb = new StringBuffer(); StackTraceElement[] stacks = new Throwable().getStackTrace(); int stacksLen = stacks.length; sb.append("提示信息:[class:" + stacks[1].getClassName()).append("]") .append("【lineNumber:").append(stacks[1].getLineNumber()).append("】") .append("[methodName:" + stacks[1].getMethodName()).append("]【message:").append(message).append("】"); System.out.println(sb.toString()); } }
相关推荐
在Java编程语言中,I/O(输入/输出)是程序与外部世界交互的重要部分,而标准输入输出流(System.in, System.out, System.err)是Java内置的预定义流,用于处理程序与操作系统之间的基本输入输出操作。这篇博客将深入...
用于系统级的操作,如获取当前时间(System.currentTimeMillis())、控制程序退出(System.exit())、标准输入输出流(System.in, System.out, System.err)。总结:Java 类库是其强大功能的核心,包括了丰富的包和...
最后,我们使用`System.setOut()`方法将`System.out`替换为`TeeOutputStream`的实例,这样所有通过`System.out.println()`打印的信息都将同时输出到控制台和文件。 注意,`TeeOutputStream`可能并不是Java的标准库...
在这个例子中,`SystemLambda.setOut()` 方法被用来替换 `System.out`,测试结束后通过 `SystemLambda.resetOut()` 还原原始输出流。这样,测试就可以准确地控制和验证输出,而不会受到其他因素干扰。 总结来说,...
### 字符替换Java代码实现及字符串代码替换 在Java编程中,经常需要对字符串进行处理,其中字符替换是一项常见的操作。本文将详细介绍如何在Java中实现字符替换,并通过不同的方法来实现这一功能。 #### 一、字符...
System.out.println("石头"); } else if (input == 1) { System.out.println("剪刀"); } else if (input == 2) { System.out.println("布"); } else { System.out.println("错误"); } ``` 2. 这题同样使用if-...
System.out.println("Numbers: " + Arrays.toString(numbers)); } } ``` **解释**: - `int age = 30;`:声明并初始化一个整型变量`age`,赋值为30。 - `double price = 29.99;`:声明并初始化一个双精度...
这个"JAVA 打印三角形源代码+详细教程.zip"压缩包很可能包含了一个简单的Java程序,演示如何通过控制台输出一个由星号(*)组成的等腰三角形,以及一份详细的教学指南。现在,我们将深入探讨这个主题,学习如何编写...
System.out.println("1. 姓名"); System.out.println("2. 性别"); System.out.println("3. 电话"); System.out.println("4. 通讯地址"); System.out.println("请选择要修改的项目(输入数字):"); int choice = ...
System.out.println("Invalid directory path."); } } } ``` 在这个例子中,我们创建了一个`File`对象,表示我们要查询的目录。`exists()`方法检查该路径是否存在,`isDirectory()`确保它是一个目录而非文件。...
System.out.println("替换字符串n为:" + n.replace("n", "土豆")); // 比较字符串 System.out.println("比较:" + n.equals("DIANZIXINXI")); // 查找子字符串位置 System.out.println("查找:" + n.indexOf...
### 有关Java String常用方法的总结 #### 一、String 类概述 `String`类是Java中最基础也是最重要的数据类型之一,在Java中被定义为一个不可变类(immutable class),这意味着一旦一个`String`对象创建之后,其...
2. **设置System.out**:然后通过`System.setOut(out)`方法将系统默认的输出流替换为自定义的输出流。 ```java System.setOut(out); ``` 3. **输出数据**:之后就可以像往常一样使用`System.out.println()`等...
System.out.println("文件/目录名: " + file.getName()); // 检查是否为目录,如果是,递归遍历 if (file.isDirectory()) { traverseDirectory(file); } } } else { System.out.println("目录为空"); } ...
3. **内联临时变量**:将临时变量替换为其实际值,简化代码逻辑。 4. **移动方法**:将一个类中的方法移动到另一个类中,如果该方法更适合于后者。 5. **引入参数对象**:将多个参数封装成一个对象,提高代码的...
### Java常用类与基础API-String的构造器与常用方法 #### 一、String的常用API-1 ##### (1)构造器 1. **介绍** - `public String()`: - 初始化新创建的 `String` 对象,以使其表示空字符序列。即创建了一个...
System.out.println("静态初始化块"); } { System.out.println(field); System.out.println("初始化块"); } public InitialOrderTest() { System.out.println("构造器"); } } ``` 当你运行这段代码并...
### JAVA正则表达式的四种常用功能 在Java中,正则表达式是一种强大的文本处理工具,可以用于字符串的搜索、替换等操作。本文将详细解释Java正则表达式的四种常见功能:匹配、分组、分割以及替换,并通过具体的示例...
2. 使用`System.setOut()`和`System.setErr()`方法,将`System.out`和`System.err`替换为`CaptureStream`。 3. 当需要释放控制台输出时,可以通过恢复原始的`PrintStream`实例(通常是`System.out`和`System.err`)...
文档注释通常用于生成API文档,而单行注释在日常开发中更为常用,尤其是在代码调试阶段。 其次,标识符是用来给类、方法、变量等命名的规则。在Java中,标识符必须遵循以下规则:以字母、下划线(_)或美元符号($...