If a member in one package shares its name with a member in another package and both packages are imported, you must refer to each member by its qualified name. For example, the graphics package defined a class named Rectangle. The java.awt package also contains a Rectangle class. If both graphics and java.awt have been imported, the following is ambiguous.
In such a situation, you have to use the member's fully qualified name to indicate exactly which Rectangle class you want. For example,
If there is a such circumstance then it doesn't make any sense to import them when ultimately we have to use fully qualified name.
In the old days, java.awt.List and java.util.List also could cause conflicts. They still can if you import java.awt.* and java.util.*.
java.io.FileFilter and javax.swing.filechooser.FileFilter also can cause conflicts, especially since both share approximately the same purpose. I'm still annoyed that javax.swing.filechooser.FileFilter does not implement java.io.FileFilter because it already has its sole method.
With those import statements, you're telling the compiler "I want to be able to refer to both Integer.MAX_VALUE and Long.MAX_VALUE as simply MAX_VALUE. The compiler's smart enough to realise that doesn't make sense, even without you trying to use them.