向下转型和向上转型
时间: 2023-09-03 19:12:52 浏览: 90
java向上转型和向下转型.doc
4星 · 用户满意度95%
向上转型和向下转型是Java中的两个重要概念。
向上转型(Upcasting)是指将一个子类对象转换成父类对象的过程,这个过程是自动的,可以隐式地进行。例如:
```
class Animal {}
class Dog extends Animal {}
Dog dog = new Dog();
Animal animal = dog; // 向上转型
```
向下转型(Downcasting)是指将一个父类对象转换成子类对象的过程,这个过程是需要显式地进行,并且有可能会抛出ClassCastException异常。例如:
```
class Animal {}
class Dog extends Animal {}
Animal animal = new Dog();
Dog dog = (Dog) animal; // 向下转型
```
需要注意的是,只有在向上转型之后才能进行向下转型,否则会抛出ClassCastException异常。向下转型的目的是为了访问子类独有的属性和方法,但是需要保证转型的正确性,否则会导致运行时异常。
阅读全文