共计 4138 个字符,预计需要花费 11 分钟才能阅读完成。
final abstract static 关键词润饰后有什么影响,能够润饰什么?
47.(多选题)ArrayList 和 Vector 的区别说法不正确的是()
A.ArrayList 是线程平安的,Vector 是线程不平安
B.ArrayList 是线程不平安的,Vector 是线程平安的
C.ArrayList 底层是数组构造,Vector 底层是链表构造
D.ArrayList 底层是链表构造,Vector 底层是数组构造
StringBuffer
NIO
线程的各种办法,阻塞,状态,run(),start(),join(),interrupt(),currentThread(),isAlive(
for 循环,switch 循环,while 循环,doWhile 循环
HashMap 原理
ArrayList 原理
a++ a– 执行步骤
(单选题)对于线程同步的特色了解谬误的是?(A)
A. 每个对象都有多个的同步锁。
B. 当一个线程开始执行同步代码块时,并不意味着必须以不间断的形式运行,进入同步代码块的线程
能够执行 Thread.sleep()或执行 Thread.yield()办法,此时它并不开释对象锁,只是把运行的机会让
给其余的线程。
C. 在静态方法后面能够应用 synchronized 修饰符。
D.Synchronized 申明不会被继承,如果一个用 synchronized 润饰的办法被子类笼罩,那么子类中这个
办法不在放弃同步,除非用 synchronized 润饰。
Synchronized 申明
同步锁
Thread.sleep() Thread.yield()
静态方法后面能够应用 synchronized 修饰符
在 JAVA 的异样解决模型中,能独自和 finally 一起应用的块是(try)
单选题)为一个 boolean 类型变量赋值时,能够应用 (B) 形式
A.boolean = 1;
B.boolean a = (9 >= 10);
C.boolean a=” 真 ”;
D.boolean a = = false;
下列输入后果是(10)
int a = 0;
while (a < 5) {
switch(a){
case 0 :
case 3 :
a = a + 2;
case 1 :
case 2 :
a = a + 3;
default :
a = a + 5;
}
}
System.out.print (a);
switch 循环中的 default 语句
(单选题)下列对于 Thread 类提供的线程管制办法的说法中,谬误的一项是? D
A. 在线程 A 中执行线程 B 的 join()办法,则线程 A 期待直到 B 执行实现
B. 线程 A 通过调用 interrupt() 办法来中断其阻塞状态
C. 若线程 A 调用办法 isAlive() 返回值为 true,则阐明 A 正在执行中
D.currentThread() 办法返回以后线程的援用
(单选题)当一个工作通过 ThreadPoolExecutor 的 execute(Runnable)办法欲增加到线程池时,
上面说法谬误的是。(B)。
A. 如果此时线程池中的数量大于 corePoolSize,缓冲队列 workQueue 满,并且线程池中的数量小于 maximumPoolSize,
建新的线程来解决被增加的工作。
B. 如果此时线程池中的数量大于 corePoolSize,即便线程池中的线程都处于闲暇状态,也要创立新的线
程来解决被增加的工作。
C. 如果此时线程池中的数量大于 corePoolSize,缓冲队列 workQueue 满,并且线程池中的数量等于
maximumPoolSize,那么通过 handler 所指定的策略来解决此工作
D. 如果此时线程池中的数量等于 corePoolSize,然而缓冲队列 workQueue 未满,那么工作被放入缓冲队列。
反射的作用以下形容正确是?A
A. 在运行中剖析类的能力
B. 在编译期查看对象
C. 运行数组操作代码
D. 以上都不对
反射
ArrayList 原理和办法
(单选题)下列哪种异样是查看型异样,须要在编写程序时申明(C)
A.NullPointerException
B.ClassCastException
C.FileNotFoundException
D.IndexOutOfBoundsException
查看型异样
(单选题)看上面的代码,写出输入的后果(A)
public class Ex2 {
public static void main(String[] args) {
int[] a = {1,2,3,4,5};
expand(a);
changeArray(a);
printArray(a);
}
public static void expand(int[] a){
int[] newArray = new int[a.length * 2];
System.arraycopy(a, 0, newArray, 0, a.length);
a = newArray;
}
public static void changeArray(int[] a){
a[0] = 10;
}
public static void printArray(int[] a){
for(int i = 0; i<a.length; i++){
System.out.print(a[i] + “\t”);
}
System.out.println();
}
}
A.10 2 3 4 5
B.1 2 3 4 5
C.10 2 3 4 5 0 0 0 0 0
D.1 2 3 4 5 0 0 0 0 0
== 和 equals 比拟的是什么?
对象存储的地址值
String 类的根本办法
substring();
concat();
多选题)已知如下代码,执行后的输入是什么?(AD)
public class Test{
public static void main(String arg[]){
int i = 5;
do{
System.out.print(i);
}while(–i>5);
System.out.print(“finished”);
}
}
A.5
B.4
C.6
D.finished
final 关键字
面向对象的了解,具体,java 的特点
(多选题)对于异样 (Exception),下列形容正确的是()
A. 异样的基类为 Exception,所有异样都必须间接或者间接继承它
B. 异样能够用 try{…}catch(Exception e){…} 来捕捉并进行解决
C. 如果某异样继承 RuntimeException,则该异样能够不被申明
D. 异样能够轻易解决,而不是抛给外层的程序进行解决
【正确答案】A,B,C
(多选题)启动一个线程是用 run() 还是 start()? 上面说法谬误的是()
A. 启动一个线程是调用 start()办法,
B.start()使线程所代表的虚构处理机处于可运行状态,这意味着它能够由 JVM 调度并执行。
C. 调用 start()意味着线程就会立刻运行。
D.run()办法不会产生必须退出的标记来进行一个线程。
【正确答案】C,D
【答题工夫】2021-03-30 08:35:15
【答案解析】启动一个线程是调用 start()办法,使线程所代表的虚构处理机处于可运行状态,这意味着它能够由 JVM 调度并执行。这并不意味着线程就会立刻运行。run()办法能够产生必须退出的标记来进行一个线程。
(多选题)启动一个线程是用 run() 还是 start()? 上面说法谬误的是()
A. 启动一个线程是调用 start()办法,
B.start()使线程所代表的虚构处理机处于可运行状态,这意味着它能够由 JVM 调度并执行。
C. 调用 start()意味着线程就会立刻运行。
D.run()办法不会产生必须退出的标记来进行一个线程。
【正确答案】C,D
【答题工夫】2021-03-30 08:35:15
【答案解析】启动一个线程是调用 start()办法,使线程所代表的虚构处理机处于可运行状态,这意味着它能够由 JVM 调度并执行。这并不意味着线程就会立刻运行。run()办法能够产生必须退出的标记来进行一个线程。
(多选题)对于 sleep()和 wait(),以下形容正确的一项是()
A.sleep 是线程类(Thread)的办法,wait 是 Object 类的办法;
B.sleep 不开释对象锁,wait 放弃对象锁;
C.sleep 暂停线程、但监控状态依然放弃,完结后会主动复原;
D.wait 后进入期待锁定池,只有针对此对象收回 notify 办法后取得对象锁进入运行状态
【正确答案】A,B,C
(多选题)已知有如下代码,下列哪些表达式返回 true()
String s=new String(“hello”);
String t =new String(“hello”);
char c [] ={‘h’,’e’,’l’,’l’,’o’};
A.s.equals(t);
B.t.equals(c);
C.s= =t;
D.t.equals (new String(“hello”));
【正确答案】A,D
(多选题)请浏览以下代码,不能够欠缺此段代码的正确选项是()
public class ExceptionTest {
class TestException extends Exception {}
public void runTest () throws TestException {}
public void test () /* Point X*/ {
runTest ();
}
}
A.throws Exception
B.Catch (Exception e).
C.Throws RuntimeException.
D.Catch (TestException e). E. No code is necessary.
【正确答案】B,C,D
(多选题)下列无关线程的说法谬误的是 ()
A. 启动一个线程是调用 start() 办法,是线程所代表的虚构处理机处于可运行状态,这意味着线程此时就会立刻运行
B.notify() 办法能够确切的唤醒某个处于期待状态的线程
C.wait() 办法能够使一个线程处于期待状态,但不会开释所持有对象的锁
D.sleep() 办法使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此办法时,须要捕获 InterruptedException 异样
【正确答案】A,B,C
(多选题)对于构造方法,下列说法正确的是:()
A. 每个类中都有至多一个构造方法
B. 一个类中能够有多个构造方法
C. 构造方法能够有返回值
D. 构造方法能够有多个参数
【正确答案】A,B,D
ArrayList 和 Vector 的区别