One thing I noticed is that you made a method called doFileIntro() and only used it once when I believe you could have used it for each batch file. Was there something I missed that prevented this? I guess it really doesn't matter, works the same both ways. Just seems odd to type something out when you have a method that does the thing that's typed out. Overall it looks pretty good. I haven't actually run it yet I just read the code in JBC.java. Keep it up, you seem to be doing well with java.