gpt4 book ai didi

java - 将父类(super class)型的数组转换为子类型

转载 作者:行者123 更新时间:2023-11-30 06:25:13 26 4
gpt4 key购买 nike

在 Java 中这导致运行时异常而不是编译时错误是否有特殊原因?

Object[] objects = new Object[10];
String[] strings = (String[])objects;

最佳答案

由于这种情况,必须在运行时进行检查:

public class Test {
public static void main(String[] args){
String[] stringsBase = {"aaa", "bbb", "ccc"};
Object[] objects = stringsBase;
String[] strings = (String[])objects;
System.out.println(strings[1]);
}
}

这是一个有效的工作程序。如果不进行流分析,编译器就不知道对象引用的数组是创建为 Object[] 还是创建为 String[] 的数组。

关于java - 将父类(super class)型的数组转换为子类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15961962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com