Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法判断java中是否有未使用的代码?_Java - Fatal编程技术网

有没有办法判断java中是否有未使用的代码?

有没有办法判断java中是否有未使用的代码?,java,Java,每当我编程时,我似乎积累了很多“垃圾”代码,这些代码已经不再使用了。为了保持我的代码整洁,避免进行任何昂贵和不必要的计算,有没有一种简单的方法来判断是否有代码没有被使用 在Java中很难做到这一点,因为它是一种反射式语言。(例如,您不能简单地查找对某个类或函数的调用,因为反射可以用于使用只能在运行时解析的字符串调用函数。) 所以一般来说,你不能确定 如果您的代码库有足够的单元测试,那么冗余代码的可能性就不应该引起关注。在Java中很难做到,因为它是一种反射性语言。(例如,您不能简单地查找对某个类

每当我编程时,我似乎积累了很多“垃圾”代码,这些代码已经不再使用了。为了保持我的代码整洁,避免进行任何昂贵和不必要的计算,有没有一种简单的方法来判断是否有代码没有被使用

在Java中很难做到这一点,因为它是一种反射式语言。(例如,您不能简单地查找对某个类或函数的调用,因为反射可以用于使用只能在运行时解析的字符串调用函数。)

所以一般来说,你不能确定


如果您的代码库有足够的单元测试,那么冗余代码的可能性就不应该引起关注。

在Java中很难做到,因为它是一种反射性语言。(例如,您不能简单地查找对某个类或函数的调用,因为反射可以用于使用只能在运行时解析的字符串调用函数。)

所以一般来说,你不能确定


如果您的代码库有足够的单元测试,那么冗余代码的可能性就不应该引起关注。

首先尽量避免积累垃圾。移除你不再需要的东西。(您可以进行备份,或者更好地使用源代码管理系统。)

您还应该为函数编写单元测试。所以你知道在你移除某些东西后它是否仍然有效


除此之外,大多数IDE都会向您显示未使用的局部变量和私有方法。

首先要尽量避免积累垃圾。移除你不再需要的东西。(您可以进行备份,或者更好地使用源代码管理系统。)

您还应该为函数编写单元测试。所以你知道在你移除某些东西后它是否仍然有效


除此之外,大多数IDE都会向您显示未使用的局部变量和私有方法。

我认为最好的检查方法是安装一个覆盖率高的插件,如eclemma,并创建单元和集成测试,以获得100%的代码覆盖率,从而完成使用代码/任务。
测试完成并运行后,不需要测试或不通过测试的代码是您不使用的代码

我认为最好的检查方法是安装一个覆盖率插件,如eclemma,并创建单元和集成测试,以获得100%的代码覆盖率,从而完成使用代码/任务。
测试完成并运行后,不需要测试或不通过测试的代码是您不使用的代码。在这方面,帮助您的基本原则之一是尽可能降低所有内容的可见性。如果一个类可以是私有的,不要将其设为默认、受保护或公共。这同样适用于方法和变量。如果你能确定某个东西在课堂外没有被使用,这就容易多了。在这种情况下,甚至像Eclipse和IntelliJ Idea这样的IDE都会建议您使用未使用的代码


在开发和重构代码时使用这种做法是自信地清理未使用的代码而不破坏应用程序的最佳方法。即使在使用反射的情况下,这也会有所帮助。

在这方面帮助您的基本原则之一是尽可能降低所有事物的可见性。如果一个类可以是私有的,不要将其设为默认、受保护或公共。这同样适用于方法和变量。如果你能确定某个东西在课堂外没有被使用,这就容易多了。在这种情况下,甚至像Eclipse和IntelliJ Idea这样的IDE都会建议您使用未使用的代码

在开发和重构代码时使用这种做法是自信地清理未使用的代码而不破坏应用程序的最佳方法。即使在使用反射的情况下,这也会有所帮助。

我认为“未使用的代码”是指在运行时始终不执行的代码。我希望我对你的理解是正确的

对其进行简单检查的方法非常简单。只需使用IntelliJ IDEA编写代码。它将告诉您代码中永远不会执行的部分,以及代码可以简化的部分。比如说,

if (x == 5) {

}
然后它会告诉你这个if语句是多余的。或者,如果您有:

return;
someMethod();
IDE会告诉您,
someMethod()
永远无法访问。它还提供了许多其他很酷的功能

但有时这还不够。如果有呢

if (x == 5) {
    someMethod();
}
但实际上在代码中,
x
只能在1到4之间?IDE不会告诉你这件事。您可以使用一个工具,通过运行大量测试来显示代码覆盖率。然后您可以看到代码的哪一部分没有执行

如果不想使用这样的工具,可以在方法中设置断点。然后手动运行一些测试。当调试器逐步执行代码时,您可以确切地看到代码的去向以及未执行的代码片段

另一种方法是使用IDE的查找/替换功能。检查您的某些公共/私有方法是否没有在任何地方被调用。例如,要检查是否调用了
someMethod()
,请在整个项目中搜索
someMethod
,并查看是否存在声明以外的引用

但最有效的方法是

首先停止编写此类代码

我认为“未使用的代码”是指在运行时总是不执行的代码。我希望我对你的理解是正确的

对其进行简单检查的方法非常简单。只需使用IntelliJ IDEA编写代码。它将告诉您代码中永远不会执行的部分,以及代码可以简化的部分。比如说,

if (x == 5) {

}
然后它会告诉你这个if语句是多余的。或者,如果您有:

return;
someMethod();
IDE