冬天5
2017-05-06 10:22
为什么我的父类和转换为子类就出错,不能强制转换啊?
你报错的那一行的意思是Dog类的引用指向父类。有这个说法吗?没有吧。前面说过:一种是父类的引用指向本类的对象,如Animal animal=new Animal();一种是父类的引用指向子类对象,如Animal animal=new Dog();还有一种就是你上面所要表达的意思:子类的引用指向父类对象,如Dog dog=(Dog)new Animal();所以你应该写成:
Dog dog2=(Dog)new HelloWorld();
你的HelloWorld从哪来的,你强制转化是Dog,怎么是HelloWorld呢
你要先实例化父类对象啊
对于这个问题,首先你得先声明这个HelloWorld这个类就像声明Dog这个类一样,然后才可以转换,在Dog dog2 = (Dog) helloworld;之前加上这个HelloWorld helloworld = new HelloWorld(); 希望能够帮助到你
你的类名错了HelloWorld
首字母大写
Java入门第二季 升级版
530636 学习 · 6091 问题
相似问题