java 变量值变化检测_Java 9.5 测试复盘

《9.5测试复盘》

3.对于一个已经不被任何变量引用的对象,当垃圾回收器准备回收该对象所占用的内存时,将自动调用该对象的哪个方法(A)

A finalize

B notify

C notifyAll

D hashCode

垃圾回收过程中的对象销毁–Finalization

13.能单独和finally语句一起使用的块是( A)

A.try

B.catch

C.throw

D.throws

解析:处理异常常用的两种方式:

1、try…catch(捕获处理机制);

2、throws(冒泡处理机制).

注意细节:使用try…catch块捕获时可以没有catch块,但当没用catch块的时候必须得有finally块.故选A)

17.尝试编译以下程序会产生怎么样的结果?(C)

public class MyClass {

long var;

17.尝试编译以下程序会产生怎么样的结果?()

public class MyClass {

long var;

public void MyClass(long param) { var = param; }//(1)

public static void main(String[] args) {

MyClass a, b;

a =new MyClass();//(2)

b =new MyClass(5);//(3)

}

}

A.编译错误将发生在(1),因为构造函数不能指定返回值

B.编译错误将发生在(2),因为该类没有默认构造函数

C.编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数

D.该程序将正确编译和执行

public static void main(String[] args) {

MyClass a, b;

a =new MyClass();//(2)

b =new MyClass(5);//(3)

}

}

A.编译错误将发生在(1),因为构造函数不能指定返回值

B.编译错误将发生在(2),因为该类没有默认构造函数

C.编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数

D.该程序将正确编译和执行

因为该类没有自行定义构造函数, public void MyClass(long param) { var = param; }只是一个方法罢了,所有该类只有一个默认的无参构造函数,所以3是行不通的。

20.正则表达式中,表示匹配非数字字符的字符是(D)?

A.\b

B.\d

C.\B

D.\D

\d 匹配一个数字字符。等价于[0-9]。grep 要加上-P,perl正则支持

\D 匹配一个非数字字符。等价于[^0-9]。grep要加上-P,perl正则支持

22.(多选)下面的Java赋值语句哪些是有错误的 (BF)

A. int i =1000;

B. float f = 45.0;

C. char s = ‘\u0639’

D. Object o = ‘f’;

E. String s = “hello,world\0”;

F. Double d = 100;

B是double无法向低进制32位的float转换

F是身为int型的100编译器无法通过自动装箱到Double类

30.关于JAVA的垃圾回收机制,下面哪些结论是正确?(B)

A.程序可以任意指定释放内存的时间

B.JAVA程序不能依赖于垃圾回收的时间或者顺序

C.程序可明确地标识某个局部变量的引用不再被使用

java提供了一个系统级的线程,即垃圾回收器线程。用来对每一个分配出去的内存空间进行跟踪。当JVM空闲时,自动回收每块可能被回收的内存,GC是完全自动的,不能被强制执行。程序员最多只能用System.gc()来建议执行垃圾回收器回收内存,但是具体的回收时间,是不可知的。

当对象的引用变量被赋值为null,可能被当成垃圾。

33.如下代码的 结果是什么 ?(B)

class Base {

Base() {

System.out.print(“Base”);

}

}

public class Alpha extends Base {

public static void main( String[] args ) {

new Alpha();

//调用父类无参的构造方法

new Base();

}

}

A. Base

B. BaseBase

C. 编译失败

D. 代码运行但没有输出

E. 运行时抛出异常

子类构造方法必须在第一行调用父类的构造方法,如果不写,系统会自动在第一行调用父类的无参构造方法

35.关于protected 修饰的成员变量,以下说法正确的是(A)

A. 可以被该类自身、与它在同一个包中的其它类、在其它包中的该类的子类所访问

B. 只能被该类本身和该类的所有的子类访问

C. 只能被该类自身所访问

D. 只能被同一个包中的类访问

36.下列不正确的 Java 语言标识符是(C )

A. Sky

B.$BaseComputer

C. for

D.NULL

Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。在Java中是区分大小写的,而且还要求首位不能是数字。最重要的是,Java关键字不能当作Java标识符。

52.多重继承的概念在Java中实现是通过如下哪些?(B)

I. 扩展两个或多个类

II. 扩展一个类并实现一个或多个接口。

III. 实现两个或更多接口。

A. 只有I &II

B. 只有II & III

C. 只有III

D. 都是

因为在Java中类只能单继承

58.下列不属于Java语言性特点的是(D)

A. Java致力于检查程序在编译和运行时的错误

B. Java能运行虚拟机实现跨平台

C. Java自己操纵内存减少了内存出错的可能性

D. Java还实现了真数组,避免了覆盖数据类型的可能

只有D不是

67.StringBuffer类对象创建之后可以再修改和变动.

A.正确

B.错误

stringbuffer是可变长度的,可通过append,insert,remove等方法改变其长度©

71.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?

A.实例变量指的是类中定义的变量,即成员变量,如果没有初始化,会有默认值。

B.局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值

C.类变量指的是用static修饰的属性

D.final变量指的是用final 修饰的变量

定义在类中的变量是类的成员变量,可以不进行初始化,Java会自动进行初始化,如果是引用类型默认初始化为null,如果是基本类型例如int则会默认初始化为0

局部变量是定义在方法中的变量,必须要进行初始化,否则不同通过编译

被static关键字修饰的变量是静态的,静态变量随着类的加载而加载,所以也被称为类变量

被final修饰发变量是常量

72.如果一个接口Cup有个方法use(),有个类SmallCup实现接口Cup,则在类SmallCup中正确的是? (C )

A.void use() { …}

B.protected void use() { …}

C.public void use() { …}

D.以上语句都可以用在类SmallCup中

既然是实现接口,就要实现接口的所有方法,相当于重写方法,方法的重写需要满足:三同一大一小(方法名、返回值类型、形参相同;访问权限>=重写前;抛出异常<=重写前)

15、Java的Daemon线程,setDaemon( )设置必须要?

A.在start之前

B.在start之后

C.前后都可以

java中线程分为两种类型:

1:用户线程。通过Thread.setDaemon(false)设置为用户线程;

2:守护线程。通过Thread.setDaemon(true)设置为守护线程,如果不设置,默认用户线程;

守护线程是服务用户线程的线程,在它启动之前必须先set。

25、下列关于Java并发的说法中正确的是(B)

A.CopyOnWriteArrayList适用于写多读少的并发场景

B.ReadWriteLock适用于读多写少的并发场景

C.ConcurrentHashMap的写操作不需要加锁,读操作需要加锁

D.只要在定义int类型的成员变量i的时候加上volatile关键字,那么多线程并发执行i++这样的操作的时候就是线程安全的了

A,CopyOnWriteArrayList适用于写少读多的并发场景

B,ReadWriteLock即为读写锁,他要求写与写之间互斥,读与写之间互斥,

读与读之间可以并发执行。在读多写少的情况下可以提高效率

C,ConcurrentHashMap是同步的HashMap,读写都加锁

D,volatile只保证多线程操作的可见性,不保证原子性

34、下面哪个Set类是排序的?(B)

A.LinkedHashSet

B.TreeSet

C.HashSet

D.AbstractSet

TreeSet自然排序

标签:Java,变量,编译,线程,MyClass,9.5,复盘,构造函数

来源: https://blog.csdn.net/ZLB_CSDN/article/details/100621276

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值