NumberAxis, LogarithmicAxis, etc. have separate methods refreshTicksHorizontal()/refreshTicksVertical() that look alsmost the same. Better would be just 1 refreshTicks() method with a parameter "orientation".
Reason: if you overwrite these protected methods, you also need to overwrite both methods with both implementations that have a lot of redundancy. It would also be easier to maintain the code.