询问一个基础知识,声明和new存在必然联系么?
最近在阅读一些java代码时,发现在创建实例对象时,有些代码没有采用“类名 对象名 = new 类名();”的方式,而是直接“new 类名();”,所以,我想问一下这两种写法之间具体有什么区别吗?
直接new 的叫匿名对象,没有赋值语句和名字。
如果只用到一次,就可以使用匿名对象,也就是你说的直接new。
比如只打印一次随机数
System.out.println(new Random().nextInt(10));
如果要打印多次,创建对象就方便很多。
Random i = new Random();
System.out.println(i.nextInt(10));
System.out.println(i.nextInt(10));
System.out.println(i.nextInt(10));