Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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
C++ 请帮我看一个散播多态性的例子_C++_Oop_Concept - Fatal编程技术网

C++ 请帮我看一个散播多态性的例子

C++ 请帮我看一个散播多态性的例子,c++,oop,concept,C++,Oop,Concept,Hy 请帮助我了解以下多态性示例: interface Car {} class Toyota implements Car {} class ToyotaSUV extends Toyota {} class Drive { public static void main(String [] args){ Car c = new Car(); Toyota t = new ToyotaSUV(); Ca

Hy

请帮助我了解以下多态性示例:

    interface Car {}
    class Toyota implements Car {}
    class ToyotaSUV extends Toyota {}
    class Drive {
public static void main(String [] args){
          Car c = new Car();
          Toyota t = new ToyotaSUV();
          Car s = new ToyotaSuv();

}
上面哪一项可以实例化,哪一项不能实例化

ToyotaSUV可以是丰田或/和汽车

真诚地

不能实例化接口,也就是说,不能实例化Car。无法实例化接口,因为它们没有构造函数。 丰田章男是一辆丰田汽车,可以像汽车一样运行。当你扩展丰田汽车的时候,你是在说丰田汽车是一辆丰田汽车,可以做和丰田一样的事情。另外,由于丰田可以像汽车一样运行,因为它实现了这个接口,所以你说丰田也可以像汽车一样运行,因为它也继承了这些方法。
这不是C++,它是java。Car是一个抽象的接口类。丰田是汽车的一个基本类,而ToyotaSUV是从丰田类派生出来的一个子类。也就是说,你不能实例化一个纯抽象类,这就是Car。你上面写的很好,你试过了吗?。基本上你可以举一个例子,意思是——把丰田称为汽车。但不是相反,因为不是每辆车都是丰田车。@DrorFichman不,这不好。c车=新车;很糟糕,他们试图实例化一个纯抽象类,这是不允许的。显然你是对的。。我在看多态部分。你不能说丰田章男d=新车?不,你不能这么做,否则你会安装一个接口车。你能做的就是c车=新丰田汽车