Java 随心笔记10
一、异常
异常概述:Java程序在运行过程中出现的错误。
异常处理方式:
a)JVM:把异常名称、原因、位置等信息输出在控制台;程序停止运行
b)try cath finally
* try catch
* try catch finally(常用)
* try finally
throws
一个异常
多个异常
二、throw throws区别
throws
用在方法声明后面,跟的是异常类名
可以跟多个异常类名,用逗号隔开
表示抛出异常,由该方法的调用者来处理
throws表示出现异常的一种可能性,并不一定会发生这些异常
throw
用在方法体内,跟的是异常对象名
只能抛出一个异常对象名
表示抛出异常,由方法体内的语句处理
throw则是抛出了异常,执行throw则一定抛出了某种异常?
如果throw是运行时runTimeException异常就不需要throws,因为运行时的异常不一定会发生。
Throwable 中的方法:
String getMessage();获取异常信息
String toString(); 获取异常类名和异常信息
void printStackTrace();获取异常类名和异常信息以及异常出现在程序中的位置
三、final,finally和finalize的区别
final 修饰变量 方法 类
finally 被finally控制的语句体一定会执行
特殊情况:在执行到finally之前jvm退出了(比如System.exit(0))
finalize 『Object类的方法』 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。
四、file类的构造
1.定义
File file = new File(String pathName);
File file = new file(String parent,String child);
File file = new File(File file,String child);
2.功能
file.creatNewFile()创建文件
file.mkdir() 创建文件夹
file.mkdirs() 创建文件夹,会自动创建不存在的父文件夹
rename:如果被改名的路径下有该文件,返回false
默认会在项目的路径下;
判断:
isDirectory();是否是目录
isFile();是否文件
exist();是否存在
isHidden();是否隐藏
getAbsolutePath()获取绝对路径
getPath()获取路径
getName()获取名称
length()获取长度
lastModified()获取最后修改的时间
list() 获取指定目录下所有的文件或文件夹名称数组
1 File file = new File("D:\\1总文件"); 2 String[] list = file.list(); 3 System.out.println("方法1 "); 4 for(String i :list) { 5 if(i.endsWith(".txt")) { 6 System.out.println(i); 7 } 8 } 9 File[] f2 = file.listFiles(); 10 System.out.println("方法2 "); 11 for(File i :f2) { 12 if(i.getName().endsWith(".txt")) { 13 System.out.println(i.getName()); 14 } 15 }
键盘录入一个int类型的整数,对其求二进制表现形式 * 如果录入的整数过大,给予提示:”录入的整数过大请重新录入一个整数BigInteger“ * 如果录入的是小数,给予提示,录入的是小数,请重新录入一个整数 * 如果录入的是其他字符,给予提示,录入的是非法字符,请重新录入一个整数 import java.math.BigDecimal; import java.math.BigInteger; import java.util.Scanner; public class Test_1_yichang { public static void main(String[] args) { while (true) { System.out.println("录入一个数"); Scanner sc = new Scanner(System.in); String str = sc.next(); try { Integer in = Integer.parseInt(str); System.out.println(Integer.toBinaryString(in)); break; }catch(Exception e) { try{ BigInteger big = new BigInteger(str); System.out.println("你输入的数也忒大了"); }catch(Exception e1) { try { BigDecimal bd= new BigDecimal(str); System.out.println("您输入的是非整数"); }catch(Exception e2) { System.out.println("您输入的是非法字符"); } } } } } }