1.请列举你所知道的各种异常(至少两种)?
- NullPointerException:当试图在需要对象的地方使用 null 时,就会发生此异常。例如,调用 null 对象的方法或访问 null 对象的字段。
- IndexOutOfBoundsException:当应用程序试图在数组、列表或其他类型的集合中访问一个不存在的索引时,会发生此异常。例如,如果一个数组有5个元素,索引范围是0-4,那么试图访问索引5或更高的元素时就会抛出此异常。
2.常见的异常类型有哪些?
- 运行时异常(RuntimeException):这些异常通常表示程序员的错误,如逻辑错误或不正确的使用API。运行时异常是未检查的异常,这意味着编译器不会强制要求程序员处理它们。常见的运行时异常包括 NullPointerException 和 IndexOutOfBoundsException。
- 受检查异常(Checked Exceptions):这些异常通常表示可以由程序员通过正常的程序流程来避免的问题。编译器要求程序员处理这些异常,通常是通过捕获它们或将它们传递给调用者。常见的受检查异常包括 IOException 和 SQLException。
3.如何自定义异常? 在Java中,可以通过创建一个新的类并从Exception类或其子类派生它来创建自定义异常。例如:
public class MyCustomException extends Exception {
public MyCustomException(String message) {
super(message); }
}
4.包装类的常用方法有哪些?
Java中的包装类(如 Integer、Double 等)提供了许多用于处理基本数据类型的方法。以下是几个常用的方法:
- valueOf():将基本数据类型的值转换为包装对象。例如,Integer.valueOf(3) 将返回一个 Integer 对象表示值 3。
- parseInt():将字符串转换为基本数据类型。例如,Integer.parseInt("3") 将返回整数值 3。
- toHexString() 和 toOctalString():将基本数据类型转换为十六进制和八进制字符串表示形式。例如,Integer.toHexString(255) 将返回字符串 "ff",Integer.toOctalString(64) 将返回字符串 "100"。
5.int a=3,String b=“3”,请问a==b吗?
不,a和b不相等。在Java中,==运算符用于比较两个对象的引用是否相等,而不是比较两个变量的值是否相等。在这种情况下,a和b是不同类型的变量,一个是int类型,另一个是String类型。即使它们的值看起来相同(都是3),但它们是不同的对象,因此a == b将返回false。要比较它们的值是否相等,可以使用equals()方法(对于String)或使用相应的比较运算符(对于int)。