java 里 可以把一个父类强制转换成一个子类 不能把一个子类强制转换成一个父类? 对吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 里 可以把一个父类强制转换成一个子类 不能把一个子类强制转换成一个父类? 对吗?相关的知识,希望对你有一定的参考价值。

对接口也一样的效果?

可以把一个父类强制转义成子类,但是可能会出现造型异常。一个子类直接就可以声明成一个父类。比如:
动物 d= new 动物();
狗 g = new 狗();
如果在这里动物是超类,狗是子类,可以说狗g是一个动物对象,但是一个动物对象d却不一定是一个狗。

接口也一样。
参考技术A 子类对象不需要强制转换,当然如果你非得强制转换一下,语法上也是行得通的。接口也是一样的。
例:Object so = new String("abc");
参考技术B 父类转子类需要强制如 String aaa = (String )object 如果转换异常抛出ClassCastException
子类转父类不需要.

接口同样 如Map map = new HashMap();
编程建议用上面的写法,包括传递参数的时候.

java中怎样做可以把父类强制转换成子类

JAVA是强类型的语言。当引用对象的时候,如果是上溯的话,需要强制转换。如你上面写的,
PiePlot p = (PiePlot)Plot,这就是上溯,生成实例时引用的是父类,需要强制转换,所以就需要加个(PiePlot)来声明Plot(Plot是父类)。
参考技术A 或许你的意思是父类对象指向子类对象的引用。

比如:父类A,子类B可以写成:A a=new B();

要不你就去研究一下里氏替换原则

以上是关于java 里 可以把一个父类强制转换成一个子类 不能把一个子类强制转换成一个父类? 对吗?的主要内容,如果未能解决你的问题,请参考以下文章

java中怎样做可以把父类强制转换成子类

java中怎样做可以把父类强制转换成子类

Java 如何实现父类转换为子类的效果?

Java 父类子类转换的问题

父类对象是不是可以强制转换成子类的对象?为啥?

JAVA中如何对父类对象强制转换子类对象的引用