Если вы вызываете только методы из других классов, сначала загрузите все классы, затем вы можете вызывать методы между классами. Не выполняйте инициализацию в файлах классов, это должно быть сделано в отдельном файле «загрузчик», который «включает» файлы, а затем вызывает инициализацию выполнения.
Если вы получаете циклические зависимости, основанные на классах, расширяющих другие классы, то вам необходимо переосмыслить всю установку.