Java中的类型转换、异常处理与数组创建
1. 未检查类型转换
在Java编程中,若方法中有意包含未检查类型转换(unchecked casts),可在方法前添加 @SuppressWarnings("unchecked") 注解,以避免虚假警告。例如,将 Object[] 类型强制转换为 T[] 类型时,就会用到这种未检查类型转换。不过,C和C++中的未检查类型转换比Java中危险得多。Java运行时即便存在未检查类型转换,也能保证重要的安全属性,比如不允许使用超出数组边界的索引访问数组。但Java中的未检查类型转换仍需谨慎使用。
2. 异常处理
在 try 语句里,每个 catch 子句会检查抛出的异常是否与给定类型匹配,这和实例测试的检查相同,所以有相同的限制:类型必须是可具体化的(reifiable),且 catch 子句中的类型必须是 Throwable 的子类。
下面是一个合法的自定义异常示例:
class IntegerException extends Exception {
private final int value;
public IntegerException(int value) { this.value = value; }
public int getValue() { return value; }
}
class IntegerExc
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



