Java Subclass $
Я новичок в Java и, возможно, задаю простой вопрос, который для некоторых может показаться глупым.
После того, как я скомпилировал свой основной класс Java, большинство подклассов отображаются в папке как $. Я копирую соответствующие классы и помещаю его в другое место для выполнения. Каждый раз, когда я делаю изменения в основной класс или один из подклассов, мне нужно копировать все связанные подклассы? или подойдет только копирование измененных?
Благодарю. Ник
4 ответа
Это о подклассе (class Y extends X {}
) или вложенные классы (class Y { class X {} }
)?
$
упомянутое вами, по-видимому, указывает на последнее, и в этом случае вам, вероятно, следует скопировать все, но если вы только создаете подклассы, тогда просто копирование скомпилированных версий файлов, которые вы изменили, вероятно, просто отлично.
Ник,
Вы имеете в виду вложенные классы? Если это так, они будут содержать "$" в именах файлов скомпилированных классов. Если предположить, что изменения вашего кода касались только родительского класса, байт-код вложенного класса не должен был изменяться во время перекомпиляции. Он должен работать только для копирования основного файла.class. Тем не менее, очевидно, что это больше гарантия копирования всего.
Имена классов, содержащие $
предназначены для вложенных / анонимных классов.
И посмотрите этот вопрос Stackru.
Но это еще не все. Цитирование ОП I copy the complied classes and put it on another location to execute.
- похоже, вы должны автоматизировать эту задачу и использовать один из традиционных инструментов сборки Java, таких как Ant
или же Maven
,