Существует ли редактор классов Java / байт-кода для редактирования инструкций? [закрыто]

Если вы разрабатываете приложение с нуля, вы можете сделать некоторые образованные выборы о том, когда звонить бесплатно. Ваша примерная программа в порядке: она выделяет память, возможно, у вас есть ее работа на несколько секунд, а затем закрывается, освобождая все ресурсы, которые она требовала.

Если вы пишете что-нибудь еще, сервер / долговременное приложение или библиотеку, которую должен использовать кто-то другой, вы должны ожидать бесплатного вызова всего, что вы malloc.

Игнорируя прагматическую сторону на секунду, гораздо безопаснее следовать строжайшему подход и заставить себя освободить все, что вы malloc. Если у вас нет привычки смотреть на утечки памяти, когда вы код, вы можете легко запустить несколько утечек. Так что, другими словами, да, вы можете обойтись без него; пожалуйста, будьте осторожны.

29
задан Xstian 22 December 2014 в 13:27
поделиться

4 ответа

Я не видел ни одного байт-кода -> байт-кода, но много бэкэндов.

Я бы посоветовал вам взглянуть на множество библиотек манипулирования байтовым кодом, таких как javassist , которые позволяют загружать байтовый код, манипулировать им и сохранять его обратно на диск, а затем писать маленькая главная, которая делает именно это.

9
ответ дан evandrix 22 December 2014 в 13:27
поделиться

Я использую reJ для непосредственного редактирования файлов классов.

Позволяет редактировать инструкции, методы, пул констант, классы сравнения и разделенное представление с помощью шестнадцатеричного редактора.

Это невероятно круто.

22
ответ дан Eugene Loy 22 December 2014 в 13:27
поделиться
  • 1
    Между прочим, я думаю, что Вы действительно хотите, ячейка - that' s, что использование Python сохранить закрытия. К сожалению, те - деталь реализации, которые являются not' t представленный - Вы can' t инстанцируют их непосредственно. – Glenn Maynard 17 July 2009 в 22:55
  • 2
    Между прочим, я думаю, что Вы действительно хотите, ячейка - that' s, что использование Python сохранить закрытия. К сожалению, те - деталь реализации, которые являются not' t представленный - Вы can' t инстанцируют их непосредственно. – Glenn Maynard 17 July 2009 в 22:55
  • 3
    Между прочим, я думаю, что Вы действительно хотите, ячейка - that' s, что использование Python сохранить закрытия. К сожалению, те - деталь реализации, которые являются not' t представленный - Вы can' t инстанцируют их непосредственно. – Glenn Maynard 17 July 2009 в 22:55
  • 4
    Между прочим, я думаю, что Вы действительно хотите, ячейка - that' s, что использование Python сохранить закрытия. К сожалению, те - деталь реализации, которые являются not' t представленный - Вы can' t инстанцируют их непосредственно. – Glenn Maynard 17 July 2009 в 22:55
  • 5
    Между прочим, я думаю, что Вы действительно хотите, ячейка - that' s, что использование Python сохранить закрытия. К сожалению, те - деталь реализации, которые являются not' t представленный - Вы can' t инстанцируют их непосредственно. – Glenn Maynard 17 July 2009 в 22:55

Я написал Java-ассемблер и disasembler с открытым исходным кодом , который может оказаться полезным.

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

7
ответ дан Antimony 22 December 2014 в 13:27
поделиться

Нашли этот список библиотек для манипулирования байтами и генерации кода?

2
ответ дан Guy Sensei 22 December 2014 в 13:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: