2019年11月28日 java2

考点1

下列程序段的输出结果是:( )

1
2
3
4
5
6
 public void complicatedexpression_r(){
int x=20, y=30;
boolean b;
b = x > 50 && y > 60 || x > 50 && y < -60 || x < -50 && y > 60 || x < -50 && y < -60;
System.out.println(b);
}
  • A true
  • B false
  • C 1
  • D 0

解析

显示答案/隐藏答案正确答案: B

&&的优先级大于|| 而不是相等 所以原式=(x>50&&y>60)||(x>50&&y<-60)||(x<-50&&y>60)||(x<-50&&y<-60);

考点2

函数()把文件位置重定位到文件中的指定位置

  • A fseek
  • B fread
  • C fopen
  • D fgets

解析

显示答案/隐藏答案正确答案: A

这是c语言的题

考点3

关于struts框架,下面那些说法是正确的?

  • A Struts中无法完成上传功能
  • B Struts框架基于MVC模式
  • C Struts框架容易引起流程复杂、结构不清晰等问题
  • D Struts可以有效地降低项目的类文件数目

解析

显示答案/隐藏答案正确答案: B

有空了解一下

考点4

有关hashMap跟hashTable的区别,说法正确的是?

  • A HashMapHashtable都实现了Map接口
  • B HashMap是非synchronized,而Hashtablesynchronized
  • C HashTable使用Enumeration,HashMap使用Iterator
  • D HashMap允许将 null 作为一个 entrykey 或者 value,而 Hashtable 不允许。

解析

显示答案/隐藏答案正确答案: ABCD

考点6

下面哪些类可以被继承? Java.lang.Thread、java.lang.Number、java.lang.Double、java.lang.Math、 java.lang.ClassLoader

  • A Thread
  • B Number
  • C Double
  • D Math
  • E ClassLoader

解析

显示答案/隐藏答案正确答案: ABE
  • A,Thread可以被继承,用于创建新的线程
  • B,Number类可以被继承,Integer,Float,Double等都继承自Number类
  • C,Double类的声明为
    1
    public final class Double extends Number implements Comparable
    final生明的类不能被继承
  • D,Math类的声明为
    1
    public final class Math extends Object
    不能被继承
  • E,ClassLoader可以被继承,用户可以自定义类加载器

考点7

关于ThreadLocal类 以下说法正确的是

  • A ThreadLocal继承自Thread
  • B ThreadLocal实现了Runnable接口
  • C ThreadLocal重要作用在于多线程间的数据共享
  • D ThreadLocal是采用哈希表的方式来为每个线程都提供一个变量的副本
  • E ThreadLocal保证各个线程间数据安全,每个线程的数据不会被另外线程访问和破坏

解析

显示答案/隐藏答案正确答案: DE

1、ThreadLocal的类声明:

1
public class ThreadLocal<T>

可以看出ThreadLocal并没有继承自Thread,也没有实现Runnable接口。所以AB都不对。
2、ThreadLocal类为每一个线程都维护了自己独有的变量拷贝。每个线程都拥有了自己独立的一个变量。
所以ThreadLocal重要作用并不在于多线程间的数据共享,而是数据的独立,C选项错。
由于每个线程在访问该变量时,读取和修改的,都是自己独有的那一份变量拷贝,不会被其他线程访问,
变量被彻底封闭在每个访问的线程中。所以E对。
3、ThreadLocal中定义了一个哈希表用于为每个线程都提供一个变量的副本:

ThreadLocal继承Object,相当于没继承任何特殊的。
ThreadLocal没有实现任何接口。
ThreadLocal并不是一个Thread,而是Thread的局部变量。