我们可以通过两种方式实现输出:一种是类型转换,另一种是不类型转换
A a=new B() // without typecaste
A a = (A)a// with Typecaste
两种方式我们都得到相同的输出。所以,类型转换的用途是什么
最佳答案
假设您有一个Animal
列表。并且其中有Tiger
和Lion
。
ArrayList<Animal> animals = new ArrayList<>();
//add some Tigers and some Lions
//sort so Tigers are at the beggining of the list
Tiger t = (Tiger)animals.get(0);
如果不进行强制转换,则在编译时会出现类型不匹配的情况。使用演员表,您只需冒
ClassCastException
的风险,而使用try-catch
可以很容易地抓住它这只是在Java中正确使用类转换的一个示例。