Я пытаюсь выполнить программный анализ исходного файла Java. Существует ли какой-либо предопределенный алгоритм для выполнения анализа переменных типов и быстрого анализа типов?
Сажа - это аналитическая структура для Java.
"Среда Soot для анализа программ на Java: ретроспектива " говорит, что модуль Spark может иметь отношение к тому, что вы делаете:
Spark реализует ряд различных методов построения графа вызовов, включая анализ иерархии классов и быстрый Анализ типа; Однако мы обнаружили, что наиболее эффективный вызов метод построения графа продолжается и строит вызовите граф в то же время, когда он вычисляет множества точек, начиная с графика вызовов CHA в качестве начального приближения для набора достижимых методов.
Wala является хорошей структурой статического анализа
для RTA : Util.makeRTABuilder
Util.makeRTABuilder
для VTA : у вас есть0-CFA, который лучше, чем VTA, Util.makeZeroCFABuilder
Util.makeZeroCFABuilder