Il tab è un carattere che viene interpretato in maniera diversa da programma a programma.
Se hai un file di testo con dei tab e lo apri con diversi editor, puoi avere un numero di spazi differente, a seconda delle impostazioni del programma.
Ho provato a vedere questo con IE e mi mette un tab a 3(!) spazi.
codice:
<pre style="font-family:'courier new'; font-size:12px;"> 
aaaaaa12345678
JFrame	f;
<pre>
Non so dove IE se lo scriva da qualche parte o se utilizzi una qualche impostazione di default del sistema (non credo perché 3 è proprio un valore particolare).
In ogni caso da codice non puoi controllarlo, è il client che decide come visualizzarlo.