The k & b Book says that an enum that isnt declared in a class can be marked only with public/default modifier, like a no-inner class.
But when I declare an enum as public. I get an error
class Nums is public, should be declared in a file named Nums.java.
This is obvious man. If you have a public class, then you must declare it in it's own file name. And since an enum is also a class internally, so you must create it in it's own file...