static关键字与异常的初步了解

本文详细介绍了Java中的`static`关键字,包括静态变量、静态方法和静态代码块的用法及执行顺序。同时,文章探讨了异常处理的概念,如编译时异常和运行时异常的区别,以及如何通过`try-catch-finally`进行异常捕捉和处理。最后,讲解了异常的抛出机制和`throws`关键字的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.static关键字

        static中文意思:静态的

        static是和对象无关的。

1.1static修饰成员变量

        语法格式:

        static 数据类型  变量名;

        注意事项:

        1.使用static修饰的变量叫静态变量

        2.代码中对象还没有创建的时候,如果加载了类,static修饰的属性已经存在了,和对象没有关系。

1.2static修饰成员方法就是静态方法

        语法格式:

public static 返回值 方法的名字 (参数列表) {}

        调用静态方法:

        类.方法名字();

1.3static修饰代码块就是静态代码块

        语法格式:

static {
    语句体
}

        只要这个类加载,那么静态代码块一定会执行

        执行顺序: 静态代码块->构造代码块->构造方法

class Man {
	static String name;//静态的属性  和对象无关的
	//静态方法
	public static void eat () {
		System.out.println("吃饭喝酒");
	}
	//静态代码块
	static {
		System.out.println("嘻嘻");
	}
}
public class Demo1 {
	public static void main(String[] args) {
		//咋使用 类.静态的属性
		Man.name = "狗蛋";
		System.out.println(Man.name);
		//使用  类.静态方法名字()
		Man.eat();
		
	}

}

二.异常

        程序在自上而下执行的时候,发生了不可预期的事件,这个事件阻止程序的运行。这就是异常。

        数组下标越界 类转换异常

        Java给咱们封装很多的异常类,并且提供很优秀的异常处理机制。

        Java提供了一个类Throwable

2.1错误和异常

        Throwable 下面有两个子类 一个叫Error 一个叫Exception

        Error:是代表JVM本身的错误,咱们程序员是通过代码解决不了的。

        Exception: 异常,代表程序在运行过程中,发生了不可预期的事件。可以使用Java来出来,让他继续执行下去。

        异常分为两种:

        编译时异常和运行时异常

2.2异常的捕捉

        在程序运行过程中,代码难免有可能会遇到异常。如果没有异常,代码正常执行。

        如果有异常,就捕捉异常

        语法格式:

try {
	有可能出现异常的代码
} catch (异常对象) {
	//针对于面异常的处理方案
}

public class Demo5 {
	public static void main(String[] args) {
		int[] arr = new int[2];//数组的容量是2
		test(1, 0, arr);
	}
	public static void test (int a, int b, int[] arr) {
		int ret = 0;
		try {
			ret = a / b;//有可能出现的异常的代码
			arr[2] = 89;//这个会有异常
			//jvm造出来哪个异常对象,就去catch 到哪个异常然后去执行具体的catch
		} catch (Exception e) {
			System.out.println("123");
			System.out.println(e.getMessage());
		} finally {
			//无论有没有异常,最终都要执行的
			System.out.println(4 + 8);
		}
	}
}

2.3异常的抛出

        在代码出现异常的地方进行异常的抛出

        如果异常的抛出的话,一旦发生异常,从出现异常的地方会终止代码

        使用两个关键字:

​                throw: 在方法中抛出一个异常。自己造一个错

​                throws:  在方法的声明处书写,告知当前调用者,此处有异常。要小心

import java.io.FileNotFoundException;

public class Demo8 {
	public static void main(String[] args) throws Exception{
		test(0);
		Thread.sleep(1000);
	}
	public static void test (int a) throws FileNotFoundException{
		if (a == 0) {
			//编译时异常
			throw new FileNotFoundException();
		}
		System.out.println("jvm xixi");
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值