Этот вопрос действительно кажется вопросом «лай неправильного дерева». Я считаю маловероятным, что вы сможете создать подкласс Reader и заставить его работать быстрее, учитывая, что вы не знаете, как это сделать. Если бы был очевидный путь, разве это не было бы уже в Java?
Если проблема со скоростью ввода-вывода, возможно, это метод, который вы используете. Существует несколько различных типов ридеров и несколько алгоритмов их использования. Например, вы читаете весь файл сразу, а затем анализируете его, или вы читаете по одной строке за раз? Некоторые из этих параметров могут быть недоступны даже в зависимости от типа файла, размера файла и других условий.
Если вы пытаетесь решить задачу для соревнования по программированию, решение этой проблемы должно быть всем, что требуется. Вам не нужно создавать свой собственный класс Reader, если это не часть описываемой проблемы. Кроме того, вы упоминаете, что вы получаете направление от форума. Откуда ты знаешь, что они вообще знают, о чем говорят?
Итак, я чувствую, что вы делаете что-то не так, что выходит за рамки вопроса, который вы задали.