欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

程序员文章站 2022-05-25 21:41:39
...

1. Math类

1.1 常用方法

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

练习:猜数游戏

//练习:随机数int , 猜数游戏
public class Demo {	
	public static void test4() {
		Scanner scanner = new Scanner(System.in);
		Random random = new Random();
		int x = random.nextInt(10)+1;
		while(true){
			System.out.println("input num:");
			int num = scanner.nextInt();
			if (num<x) {
				System.out.println("猜小了");
				System.out.println("请继续猜:");
			}else if(num>x) {
				System.out.println("猜大了");
				System.out.println("请继续猜:");
			}else if(num == x) {
				System.out.println("猜对了");
				break;
			}			
		}			
	}
	public static void main(String[] args) {
		test4();
	}
}

2. 和日期相关的类

2.1 Date类

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

2.2 Calendar类

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3. 异常

3.1 继承关系

父类:Throwable
子类:

  • Error: 通过代码不能处理的。 xxxError
  • Exception: 通过代码能处理的错误。 xxxException
    • RuntimeException:运行时异常。 Eg: 整数/0异常 (ArithmeticException) 、 数组越界异常(StringIndexOfBoundsException) 、 字符串索引越界、 类型强制转换异常 、空指针异常。
    • 编译时异常:如IOException、FileNotFoundException、InterruptedException

eg:
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3.2 强制处理

运行时异常不强制处理,如果代码写的严谨,可以避免运行时异常的产生
编译时异常必须处理

3.3 异常处理的两种方式

(1)throws抛出异常(声明异常)
(2)try-catch块捕获异常
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
异常代码块

  • 在日志文件中保存堆栈信息
  • 对于外行,则 翻译异常信息
  • 检查代码:直接打印堆栈信息

3.4 异常块的正确使用语法

try-catch
try-catch-finally
try-catch-catch-…-finally
try-finally 语法正确,但不能捕获异常
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3.5 try-catch可以嵌套使用try-catch块

public static void test8() {//可以嵌套try
		try {
			try {
				
			}finally {
				
			}
		} catch (Exception e) {
		} 
	}

3.6 执行过程

  • 如果try中有异常,从异常语句开始不再执行后边的语句,跳到catch执行。
  • 不管有无异常,finally块都会执行
    达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
    达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
    达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
    达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3.7 自定义异常类

  • 继承现有的异常类

  • super(异常信息) //调用父类带参的构造方法

  • 使用格式:if(){throw 异常类对象}
    达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3.8 方法重写异常(编译时异常)

子类方法重写父类的方法的异常规则:
子类异常要<=父类异常(指编译时异常,和运行时异常没有关系
<= 指的是:个数、继承关系
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流
达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

3.9 throw 和 throws 的区别

throw throws
抛出异常 声明异常
在方法内 方法声明
后面跟着异常类的对象 后面跟着异常类的类型
只能有一个异常类的对象 多个异常类型,用“,”隔开

4. IO流

4.1 File类

  • 创建对象时,不能创建文件夹和文件,只是对文件的一个描述

4.1.1 构造方法创建对象的三种格式

//构造方法创建对象的三种格式
	public static void test1(){
		File file = 
				new File("c:\\a\\b\\a.txt");//方式1
		File file2  = 
				new File("c:\\a\\b","a.txt");//方式2
		
		File path = 
				new File("c:\\a\\b");
		File file3 = 
				new File(path,"a.txt");//方式3
		System.out.println(file+","+file2+","+file3);
	}

4.2.2 文件夹的创建和删除

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

4.2.3 创建文件

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

4.2.4 常用方法

达内javaSE_day11 学习笔记 —— Math类、日期相关类、异常、IO流

相关标签: javaSE实训笔记