I theoretically understand the point why there is no abstract static in Java, as explained for instance in Why can't static methods be abstract in
Sounds like you need to use a singleton. Basically, you call a static method like MyFileTypes.getDataFileInstance()
which creates a single instance (or reuses if already created) of an object and when you first create it setup the 'constants' as needed. I'll see if I can find you a good example but your post isn't very clear about how you want to use it.