Great Job but I like to say one comment 

The program functionality is good but there is few points
1- you have a lot of instance variables with no necessity 
2- there's more more break & continue statements in one block(while)
3- you don't need to trace the wrong characters in this class  

with my best wishes :)