you can put your classes in default package and source files in root dir "/Main.java", but as it stands most of industry/tools is following conventions that make life easier for people that need to maintain the code.
but yes namespaces must match directory structure.
but yes namespaces must match directory structure.