The private modifier and final keyword are different things and have different purposes.
Private is an access modifier. Only code in the same class can call private methods or access private fields. Final is a keyword used to define an entity that can only be assigned once.
A final field can not have its value changed, ever. But it can be read by any other class. So, if you do not want it to be read by other classes, then you can set it as private field.
A private field can have its value change, but not by other classes, only by the class it belongs. If you do not want it to be changed, ever, then you can set it as a final field.
The same goes to methods. A private method is not visible to others classes, that's why it can't be overridden. The main goal here is to prevent access by others classes.
A final method can't be overridden, but it is visible to other classes.
I think that's the main difference.