NullPointer Exception handling in the code
The general rule is:
never return null except it is a valid member of the result set.
Usually it is not as in your example.
Instead of returning a null after the IOException occurred you should either return an empty List or throw your own (Runtime-) Exception. Whch option to choose depends if havin no users is an expected use case whithin your application (e.g. resulting in an empty list presented to the user)  or if it is an error condition with the user gets presented as an explicit error message.
Your class Data should look like this:
public class Data {

    private static final Operations&lt;User&gt; operations = new FileOperations&lt;User&gt;();

    private static final List&lt;User&gt; users = new ArrList&lt;&gt;();

    public static List&lt;User&gt; getUsers() {
        users.clear();
        try {
            users.addAll(operations.get());
        } catch (IOException e) {
            e.getMessage();
        }
        return users;
    }
}


BTW:
avoid the use of static
declaring your methods static has a lot of Problems.
It makes your code inflexible, had to change and to maintain. It also throws away polymorphism which is the most powerful feature of OOP.
If you refure to work with objects you should ask yourself why you chose an OO language...