Почему мы во всех задачах объявляем новые классы как вложенные? почему нельзя объявить их так
public class Solutoin {

    public static void main(String[] args) throws Exception {
        EnglishTranslator englishTranslator = new EnglishTranslator();
        System.out.println(englishTranslator.translate());
    }
}
     abstract class Translator {
         }
     class EnglishTranslator extends Translator {
          }
    }