Dog my Dog = new Dog();这到底是什么意思?在JAVA中

Dog是一个类,变量myDog的类型被指定为Dog。

MyDog是引用变量名,类型是Dog。

=是一个赋值。

新可以理解为“代”。

Dog()调用Dog类的无参数构造函数。如果没有在Dog类中定义,系统默认为无参数构造函数。

大致意思是:定义一个myDog变量,类型:Dog,值:一个Dog对象。

ABC x = new ABC();这是可以的,前提是有abc类。

ABC x = new BCD();这个会分两种情况。

1.如果abc是bcd的父类,或者bcd实现了接口abc,就可以了。

2.否则,你不能。