Логичнее хранить currentDirectory как File. Тогда и удастся избежать безумного кидания исключений из конструктора.