Codezeile ausgeben

HerrRitschwumm

Grünschnabel
Hallo,
ich würde gerne mittels einer Funkion die Codezeile ausgeben, an der ein bestimmtes Ereignis stattgefunden hat.
Z.B verwende ich den instanceof - operator und möchte, falls dieser ein false zurückgibt, Folgendes z.B. ausgeben:
System.out.println("instanceof - operator returned false in class: " + this.getClass() + " , line: " + funktionWelcheDieZeileDiesesAufrufesAusgibt());

Kennt jemand einen Weg dies zu bewerkstelligen?
Besten Dank im Voraus!

Viele Grüße
Günter Schlegl
 
Geht in Java nur mit Trick..

Java:
	int linenumber = new Exception().getStackTrace()[0].getLineNumber();
		System.out.println("The line number is " + linenumber);
 
Hallo,

oder so seit Java 5:
Java:
/**
 * 
 */
package de.tutorials;

/**
 * @author Thomas.Darimont
 *
 */
public class ShowLineNumbersExample {

    /**
     * @param args
     */
    public static void main(String[] args) {
        a();
        System.out.println("xxx");
    }

    private static void a() {    
        b();
        
    }

    private static void b() {
        System.out.println(Thread.currentThread().getStackTrace()[1].getLineNumber());
    }

}

Gruß Tom
 
Zurück