JAVA其他
其他:
操作数组的工具类Arrays
Arrays 类是 Java 中提供的一个工具类,在 java.util 包中。该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序、搜索等。
使用的时候要先导入:
import java.util.Arrays;
Arrays.sort(数组名): 对数组按升序排序
String[] hobbys = { "sports", "game", "movie" }; Arrays.sort(hobbys);
Arrays.toString(数组名);
System.out.println( Arrays.toString(hobbys) 显示 [ game , movie , sports ] 常常用这种方法来显示数组
一个.java文件只能有一个public class, 并且要与.java文件同名
一般情况下,我们在一个.java文件中只定义一个类, 这个类里可以有一个main()方法作为入口。
如果一个.java文件中定义多个类,用javac编译的时候会对每一个类生成一个.class, 这样很不好,比较乱。
包管理
把一些类的.java文件第一行加上package packagename. 然后放到一个名字为packagename的目录下。这就做成了一个包。
也可以把.java文件先用javac编译成.class, 然后再放到packagename的目录下, 这样包别人也可以用,但是看不到源代码。
在其他.java文件中只要import packagename.*就可以使用这个包里面的类了。
另外,在一个package里的类可以不用import就相互引用。
异常处理
Throwable 派生出 Error和Exception
Error: VirtualMachineError, ThreadDeath Exception: RuntimeException: NullPointerException, ArrayIndexOutOfBoundsException, ClassCastException, ArithmeticError ... 检查异常: IOException, SQLException ...
异常树
try{…}catch{…}finally{…}:
try { System.out.println("Please input your age:"); Scanner input = new Scanner(System.in); int age = input.nextInt(); System.out.println("your age after ten years is " + (age + 10)); }catch (ArithmeticException e) { System.out.println("Error! ArithmeticException"); }catch (Exception e) { System.out.println("Error! Your age must be an int"); }finally{ // 无论是否抛出异常, 都会执行 System.out.println("This is finally block!"); }
自己抛出异常 throw关键字和thorows关键字,
throw 抛出异常: throw new Exception("Cannot be devide by 0!"); throws 定义方法可能会抛出的异常,所有可能抛出自己抛出异常的方法,都要用throws加以说明。 public float divide(float a, float b) throws Exception { if (b == 0.0){ throw new Exception("Cannot be divide by zero!"); }else{ return a/b; } }
自定义异常
class ZeroException extends Exception { public ZeroException(String message) { super(message); } }