java可以不给实例直接new吗

请问为什么可以直接new 实现类调方法,不需要写成 接口 实例 = new 实现类 吗

img

  • 类自己当然可以实例化, 使用接口是为了 面向接口编程,方便依赖注入
  • 直接 使用 new 类名(); 相当于生成了一个 该类的实例的临时对象【匿名对象】, 这个匿名对象自然是可以调用其对应的方法的。

这就是一个匿名对象,可以直接new的

=和new是两步,new是实例化,=是赋值操作,不赋值那堆里的对象以后就无法找到了,说不定直接就赶上垃圾回收了