如果程序是这样写的,那没关系:
class ReduceCode
{
void display()
{
System.out.print("Hello");
}
public static void main(String[] X)
{
new ReduceCode().display();
}
}
而不是
class ReduceCode
{
void display()
{
System.out.print("Hello");
}
public static void main(String[] X)
{
ReduceCode rc = new ReduceCode();
rc.display();
}
}
我理解必须声明对象引用的原因,以便在涉及任何实例变量时,将来可以使用该引用访问这些变量的值,但对于display()
等方法只打印一些东西,可以忽略参考。
除此之外,没有参考的实例化是否有任何缺点?我在官方网站上找不到任何文件。这种技术是否在工业级使用?
答案 0 :(得分:1)
我发现的唯一缺点是使用断点进行调试时。在第二个示例中,您可以将鼠标悬停在Eclipse中的rc
变量上并进行检查。
但这是一个很小的代价:第一种方式更具可读性,使对象的范围更加清晰。
答案 1 :(得分:0)
我知道以这种方式将对象用作可丢弃工具没有任何缺点。我实际上建议如果你不需要实例引用,最好以这种方式使用它们。
我唯一能想到这种做法可能令人讨厌的地方是在调试时。您将没有机会检查所创建对象的详细信息。
Java 8中的新Streams
系统使用这样的流,它们通常仅在表达式评估时存在一段时间。