Can a Java program access its own source code?
<p>In Java, I'd like to find a way to allow a program to access its own source code, mainly for debugging and metaprogramming purposes (such as printing a method signature at runtime, or allowing a program to read its own comments, or allowing a Java class to print all methods of a certain type, or allowing a program to generate a new version of its own source code, etc).</p>

<p>Is there any way to allow a Java program to access a copy of its own source code, and read it line-by-line?</p>

<pre><code>//this is the first line of the program
//this method is not implemented
public class inspectSourceCode(){
    public static String getLine(int lineNumber){
        //get the line of the program's own source code as a string,
        //this is not currently implemented
    }
    //this method is implemented
    public static void main(String[] args){
        System.out.println(getLine(0));
        //should print "//this is the first line of the program",
        //if the method getLine works correctly
    }
}
</code></pre>
