如何在Java中获取当前代码行行号
为了实现自定义的log类,能够输出具体的代码行行号,通过使用StackTraceElement对象实现了。
这里指出需要注意的几个问题:
1. 程序中返回的代码行行号,是新建StackTrackElement对象的那一行。
2. 可以通过传参的方法实现输出特定行行号。具体实现见代码。
1/**
2 *
3 */
4package leo.demo.training;
5
6/**
7 * Get current java file name and current code line number
8 * @author Leo Xie
9 */
10public class CurrentLine {
11 /** *//** http://www.mscto.com
12 * @param args
13 */
14 public static void main(String[] args) {
15 StackTraceElement ste1 = null;
16
17 // get current thread and its related stack trace
18 StackTraceElement[] steArray = Thread.currentThread().getStackTrace();
19 int steArrayLength = steArray.length;
20
21 String s = null;
22
23 // output all related info of the existing stack traces
24 if(steArrayLength==0) {
软件开发网
25 System.err.println("No Stack Trace.");
26 } else {
27 for (int i=0; i<steArrayLength; i++) {
28 System.out.println("Stack Trace-" + i);
29 ste1 = steArray[i];
30 &nbs
相关文档:
在成功实现Java调用C++之后,接下来想到能否通过JNA实现Java调用Fortran,今天试验了一下,还是比较容易的。
网上有一个Java调用F95的例子,但是我考虑不仅要实现F95的调用,还要实现F77的调用,所以费了一些周折。
问题的关键在于F77为过程名自动添加了一个尾部的下划线,所以sub1这个过程,到Java一端,就变成了sub1_, ......
Throwable
Throwable 类是 Java 语言中所有错误或异常的超类。只有当对象是此类(或其子类之一)的实例时,才能通过 Java 虚拟机或者 Java throw 语句抛出。类似地,只有此类或其子类之一才可以是 catch 子句中的参数类型。
两个子类的实例,Error 和 Exception,通常用于指示发生了异常情况。通常,这些实例是在异常情 ......
看了一段北风网的视频,总结几个经典的java陷阱给大家。
答案在博客中:http://blog.csdn.net/ol_beta/archive/2010/05/17/5598867.aspx
欢迎大家讨论!
1、找奇数:
Java code
public static boolean isOdd(int i){
return i % 2 == 0;
}
上面的方法真的能找到所有的奇数么?
2、浮点数想减
Jav ......
明天有一个新的就业班开课了,有的同学决定转班,自己心里也挺矛盾的,犹豫不决!
去可以让自己对基础更加熟练,毕竟所有的知识都是新东西,如果有更多的时间练习,效果一
定更好!不去是觉得原理都懂得了,只要坚持上完剩下的课程,可以再去慢慢练习代码,没有
必要浪费时间?好矛盾,明天找张老师咨询下....
今 ......
在进行MIS系统开发过程中,从配置文件中读取配置信息是每一个系统必须具备的功能,例如,我们要配置读取数据库配置信息,包括驱动程序名、连接字符串,用户名,口令等信息,由于这些信息会随着用户的不同而发生改变,所以不能直接把参数写在程序中,将其写入配置文件,然后在应用程序中读取配置信息并加以使用,是一个成 ......