3

我不确定这是否是正确的地方,我们将不胜感激。我想为 Java 构建一个静态污点分析工具。我的理解是该工具将从主入口点开始扫描所有 java 文件。对于每一行源代码,它将对其进行解码并执行所需的操作。

例如,

1- Boolean x=false;
2- String s = x.toString();   

第 1 行声明了一个布尔变量,第 2 行将其转换为字符串。第 1 行会注意到布尔变量“x”已被声明,并在第 2 行被转换为字符串。只有当我检查 toString() 函数并执行所需的操作时,我的工具才会理解它。

我的问题是,我是否需要为 Java 中为布尔类型定义的所有函数编写检查?其他数据类型和其他库函数怎么样?

例如,布尔类型可用的其他一些函数是:

toString(boolean value)
compareTo(Boolean that)
etc.
4

1 回答 1

3

为什么要重新发明轮子?你看过findbugs吗?如果你知道一些错误模式,然后用 findbugs 编写你自己的错误检测器,你就完成了。 这里这里这里这里是一些起点......

于 2013-08-20T07:06:53.233 回答