局部变量,类变量

1 关于Java 的异常处理正确的是()

A throw 关键字可以在方法上声明该方法要抛出的异常类
B throws 用于抛出异常对象
C try 是用于检测被包住的语句块是否出现异常,如果出现异常,则抛出异常,并且执行catch
D finally语句块,不管有没有异常,都要执行
E 在try中不可以抛出异常
注解1:
throw用于抛出异常对象。
throws关键字可以在方法上声明该方法要抛出的异常。 该异常如果在此函数中没有catch 则在其方法的调用中要捕获,如果还是没有捕获,此时,会层层向上寻找,如果最后还是没有则虚拟机会进行异常的抛出。
try是用于检测被包住的语句块是否出现异常,如果有异常,则抛出异常,并执行catch语句。
cacth用于捕获从try中抛出的异常并作出处理。
finally语句块是不管有没有出现异常都要执行的内容。
注解2:
Java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。
在Java中,每个异常都是一个对象,它是Throwable类或其它子类的实例。
当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并进行处理。
Java的异常处理是通过5个关键词来实现的:try、catch、throw、throws和 finally。
一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。
用try来指定一块预防所有”异常”的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的”异常”的类型。
Throw语句用来明确地抛出一个”异常”。
Throws用来标明一个成员函数可能抛出的各种”异常”。 Finally为确保一段代码不管发生什么”异常”都被执行一段代码。可以在一个成员函数调用的外面写一个try语句,在这个成员函数内部写另一个try语句保护其他代码。每当遇到一个try语句,”异常”的框架就放 到堆栈上面,直到所有的try语句都完成。如果下一级的try语句没有对某种”异常”进行处理,堆栈就会展开,直到遇到有处理这种”异常”的try语句
答案:CD
2 对于死锁的理解:
* 根据操作系统中的定义:死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所站用不会释放的资源而处于的一种永久等待状态。
死锁的四个必要条件:(由必要条件不一定能推出。。。。)
1互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。
2请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。
3非剥夺条件(No pre-emption):已经分配的资源不能从相应的进程中被强制地剥夺。
4循环等待条件(Circular wait):系统中若干进程组成环路,该环路中每个进程都在等待相邻进程正占用的资源。

3 下列哪些情况下,必须使用抽象类?

A 当一个类的一个或者多个方法是抽象方法时
B 当一个类是抽象类的子类,并且不能为任何的抽象的方法提供方法体时
C 当一个类实现多个接口
D 当一个类实现了一个接口,并且不能为任何抽象方法提供实现细节或者方法体
注解: ABD

4 下列关于Java 的实例变量, 局部变量, 类变量,和final变量,下列说法错误的是()

A 实例变量指的是类中定义的变量,即类的成员变量, 如果没有初始化,会有默认的初始化值
B 局部变量指的是在方法中定义的变量, 如果没有初始化,会有默认的初始化值
C 类变量指的是用static 修饰的变量
D final变量指的是用final修饰的变量

public class Test2 {

static int a ;    //类变量(静态变量)
private String string;  //引用类型的实例变量
private char b;    //基本类型的实例变量

// public int methoud()

// {
// int i; //局部变量
// return i;
// }
public static void main(String[] args) {

    Test2 test2 = new Test2();
    System.out.println("char= " + test2.b); // 空 nothing
    System.out.println("a =" + test2.a); //0
    System.out.println("string = " + test2.string);  //null     
}

}
/*
实例变量: 定义在类中的变量是类的成员变量,可以不进行初始化, java 会自动进行初始化。(如果是引用类默认初始化为 null, 如果是基本类型,默认初始化为 0 )
局部变量 :定义在方法中的变量,必须进行初始化,否则不通过编译。
类变量 :(也叫作静态变量)是类中独立于方法之外的变量,用 static 修饰。
final 修饰的变量: 也称为常量。
局部变量必须要进行初始化才可输出,否则会报错误。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值