复盘

1: 有以下程序片段且Interesting不是内部类,下列哪个选项不能插入到行1。(D )

2.public class Interesting{
3. // 省略代码
4.}

A.import java.awt.*;
B.package mypackage;
C.class OtherClass{ }
D.public class MyClass{ }

解析:在同一个java原文件中,可以有多个class类,但是只有有一个公共的 public class

2:在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D)方法来完成一些画图操作。
A.start( )
B.stop( )
C.init( )
D.paint( )

解析:该题考查对Applet必须要重载的几个方法的理解。选项A错误,start()方法使得程序从初始态进入运行态,当浏览器从图标状态恢复为窗口时,或者当用户离开包含Applet的主页后又再返回时,系统都会自动再执行一遍start()方法;选项B错误,stop()方法和start()方法相对应,当浏览器变成图标或者是用户离开Applet所在页面时,浏览器都会调用stop()方法,该方法也是可以被多次调用的;选项C正确,当创建Java Applet且第一次使用支持 Java的浏览器载入该Applet时,就会执行init()方法,通常在这方法中执行一次性的初始化操作;选项D错误,paint()方法是画图时必须要重载的方法。故本题答案是C。

3:下列修饰符中,能够使得某个成员变量可被它所在包访问到和它的子类访问到的是(A)
A.protected
B.public
C.private
D.应不加修饰符

解析:
在这里插入图片描述
4:transient变量和下面哪一项有关(A)?
Serializable
Cloneable
Runnable
Throwable
Comparable
解析:

  1. 在序列化的时候,被transient或者static修饰的属性,不可以序列化。
  2. 一个类可以被序列化,那么它的子类也可以被序列化。
  3. 序列化可以实现深复制,而Object中的clone实现的就只是浅复制。

5:.以下 D 不是 Object 类的方法
A.clone()
B.finalize()
C.toString()
D.hasNext()
解析:hasNext() 一般是迭代器(Iterater)的方法,表示是否存在下一个元素,用next()方法取到下一个元素。

6:.假链接中我们通常在a标签的href中添加什么能使得页面不跳转(c)
A.#
B.##
C.javascript:;
D.直接为空,无需添加
在这里插入图片描述
7:15. 对于li这个节点,下列哪个CSS选择器的优先级最高?c
A.li#app
B.li.cnt
C.li.cnt:hover
D.#app.cnt
解析:css选择器的优先级:1.html元素选择器权重为1 2.class类选择器权重为10 3.id选择器权重为100 4.内联最高为1000 5.而像这四个选项的,为指定选择器,权重相加

8:列表(List)和集合(Set)下面说法正确的是? (a )
A.Set中至多只能有一个空元素
B.List中至多只能有一个空元素
C.List和Set都可以包含重复元素的有序集合
D.List和Set都是有序集合
解析:Set 不能有重复的元素,且是无序的,要有空值也就只能有一个。因为它不允许重复。 L ist 可以有重复元素,且是有序的,要有空值也可以有多个,因为它可重复

9:下列叙述中错误的是( d)
A.对于各种特定的输入,算法的时间复杂度是固定不变的
B.算法的时间复杂度与使用的计算机系统无关
C.算法的时间复杂度与使用的程序设计语言无关
D.算法的时间复杂度与实现算法过程中的具体细节无关

题目解析:
正确答案 : A 解析 :【解析】算法的时间复杂度是指执行算法所需要的计算工作量。为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。算法所执行的基本运算次数还与问题的规模有关;对应一个固定的规模,算法所执行的基本运算次数还可能与特定的输入有关。故本题答案为A选项。

10:下面这段JS程序的执行结果是:D

var user = {
 count : 1,
 getCount: function(){
  return this.count;
 }
}
var func = user.getCount
console.log(func())

A.this.count
B.1
C.报错
D.undefined

解析 :
// 1.调用对象未声明的属性会undifned
var user={};
console.log(user.name);//undifned

// 2.使用未赋值只声明的基本数据类型会undifned
var one;
console.log(one);//undifned

// 3.使用未声明的变量会报错
console.log(two);//new_file.html:15 Uncaught ReferenceError: two is not defined

在本题中,this指向的是window,window对象已经自动被浏览器声明了,只是还没有声明count属性,所以也是undifned

11: 根据规范,以下 HTML 和 CSS 代码解析后, container.clientWidth 的值是:B

<style>
#container {
width: 200px;
height: 200px;
padding: 20px;
margin: 20px;
border: solide 10px black;
}
</style>

<div id="container">
content
</div>

A.200
B.240
C.280
D.300

12: Java 多线程有几种实现方法?(AB)(多选)
A.继承Thread类
B.实现Runnable接口
C.实现Thread接口
D.以上都不正确
解析:
java实现多线程有两种方法

1、继承Thread类

2、实现Runnable接口

这两种方法的共同点:

不论用哪种方法,都必须用Thread(如果是Thead子类就用它本身)产生线程,然后再调用start()方法。

两种方法的不同点:

1、继承Thread类有一个缺点就是单继承,而实现Runnable接口则弥补了它的缺点,可以实现多继承

2、继承Thread类必须如果产生Runnable实例对象,就必须产生多个Runnable实例对象,然后再用Thread产生多个线程;而实现Runnable接口,只需要建立一个实现这个类的实例,然后用这一个实例对象产生多个线程。即实现了资源的共享性

基于以上两点所以建议用第二种方法
13:面哪几个函数 public void example(){…} 的重载函数?(AD)(多选)
A.public void example(int m){…}
B.public int example(){…}
C.public void example2(){…}
D.public int example(int m,float f){…}
解析:重载就是方法名一样(必须的),里面执行的内容不一样,但是呢,又出现一个问题,你写的两个或者多个方法要能让JVM(JAVA 虚拟机)认识是唯一的,所以,这里就和返回的类型无关了,因为如果返回类型不一样,其他都一样的话,那JVM是不知道到底是调用哪个方法的。所以方法名一样,入参的类型,个数,顺序(术语:方法的签名)只要有一个不同就是方法的重载了。
14:针对以下代码,哪些选项执行后是true的:(BD)(多选)

class CompareReference{
   public static void main(String [] args){
   float f=42.0f;
   float f1[]=new float[2];
   float f2[]=new float[2];
   float[] f3=f1;
   long x=42;
   f1[0]=42.0f;
  }
}

A.f1f2
B.x
f1[0]
C.f1f3
D.f2
f1[1]

15:下面的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;
16:下面的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;
17: true、false、null、sizeof、goto、synchronized 哪些是Java关键字?(多选)EF
A.true
B.false
C.null
D.sizeof
E.goto
F.synchronized
解析:在这里插入图片描述
18: 哪一个html盒模型中的border的正确写法?A
A.p{ border:5px solid red;}
B.p{border:5px
red solid; }
C.p{border: red solid 5px; }
D.p{border: solid red 5px; }
解析:为了代码的可读性,建议按照,border-width,border-style,border-color,的顺序书写。但其实顺序调换是不影响呈现的

19:css中clear的作用是什么?C
A.清除该元素所有样式
B.清除该元素父元素的所有样式
C.指明该元素周围不可出现浮动元素
D.指明该元素的父元素周围不可出现浮动元素
解析:
clear 属性定义了元素的哪边上不允许出现浮动元素。在 CSS1 和 CSS2 中,这是通过自动为清除元素(即设置了 clear 属性的元素)增加上外边距实现的。在 CSS2.1 中,会在元素上外边距之上增加清除空间,而外边距本身并不改变。不论哪一种改变,最终结果都一样,如果声明为左边或右边清除,会使元素的上外边框边界刚好在该边上浮动元素的下外边距边界之下。

20:为每一个指定元素的指定事件(像click)绑定一个事件处理器函数,下面哪个是用来实现该功能的?B
A.trigger (type)
B.bind(type)
C.one(type)
D.bind

21:以下哪个区域不属于新生代?C
A.eden区
B.from区
C.元数据区
D.to区
解析:在这里插入图片描述
22:main() 方法中给出的整型数组,如果将其写到一个文件中,需要( F)。
E.标准输出流System.out.println()。
F.建立数据字节输出流。
G.建立数据字节输入流。
H.标准输入流System.in.read()。

:23:下面关于 Canvas 和 SVG 的描述,哪一个是正确的 ( D )
A.可以给一个 Canvas 中的不同图形分别绑定鼠标事件
B.Canvas 和 SVG 都可以使用 JavaScript 来绘制
C.WebGL 使用 SVG 在网页上进行 3D 图形绘制
D.Canvas 更适合静态图片的展示

24: 现有如下html结构(D)

<ul>
 <li>click me</li>
 <li>click me</li>
 <li>click me</li>
 <li>click me</li>
</ul>

运行如下代码:

    var elements=document.getElementsByTagName('li');
    var length=elements.length;
    for(var i=0;i<length;i++){
        elements[i].onclick=function(){
        alert(i);
    }
 }

依次点击4个li标签,哪一个选项是正确的运行结果(a)?
A.依次弹出1,2,3,4
B.依次弹出0,1,2,3
C.依次弹出3,3,3,3
D.依次弹出4,4,4,4
25:以下代码执行后,array的结果是?C
var array=[-1,1,3,4,6,10];
array.sort((a,b)=>Math.abs(a-3)-Math.abs(b-3));
A.[10,-1,6,1,4,3]
B.[10,6,4,3,1,-1]
C.[3,4,1,6,-1,10]
D.[-1,1,3,4,6,10]

  1. 名为“ctx”的变量是某个HTML5画布对象的上下文。以下代码绘制的是什么(C)
    Ctx.arc(x,y,r,0,Math.PI,true);
    A.在给定点绘制一个矩形
    B.从一个点到另一个点绘制一条直线
    C.在给定点绘制一个半圆
    D.在给定点绘制一个圆

  2. 下面哪一项不属于优化Hibernate所鼓励的?A
    A.使用单向一对多关联,不使用双向一对多
    B.不用一对一,用多对一取代
    C.配置对象缓存,不使用集合缓存
    D.继承类使用显式多态
    28:下列哪些排序方法在最坏的情况下的时间复杂度为n^2( BCD )(多选)
    A.归并排序
    B.快速排序
    C.冒泡排序
    D.插入排序
    29:关于栅格系统,以下说法正确的是(多选)AB
    A.会有自动的padding样式
    B.会有自动的margin样式
    C.其字体默认为14px
    D.其box-sizing默认为border-box

30:以下哪个不能用来处理线程安全D
A synchronized关键字
B volatile关键字
C Lock类
D transient关键字

31:以下JAVA程序代码的输出是B

public static void main(String args[]) {
System.out.println(14^3);
}

A 2744
B 13
C 17
D 11
32: 在开发中使用泛型取代非泛型的数据类型(比如用ArrayList取代ArrayList),程序的运行时性能会变得更好。(B)
A正确
B错误
33:有如下一段程序:

public class Test{
    private static int i=1;
    public int getNext(){
         return i++;
    }
    public static void main(String [] args){
        Test test=new Test();
        Test testObject=new Test();
        test.getNext();
        testObject.getNext();
        System.out.println(testObject.getNext());
    }
}

请问最后打印出来的是什么?(B)
A 2
B 3
C 4
D 5

34:关于Java的抽象类、接口,以下描述错误的是?C
A抽象类不一定含有抽象方法,接口中的方法都是抽象方法
B一个类只能继承一个抽象类,但可以实现多个接口;一个接口可以继承多个接口
C抽象类和接口中的方法都没有方法体
D抽象类可以含有私有成员变量,接口不含有私有成员变量
35下面哪个Set类是排序的?B
A LinkedHashSet
B TreeSet
C HashSet
D AbstractSet

36多态的表现形式有(A)
A重写
B抽象
C继承
D封装

37如果int x=20, y=5,则语句System.out.println(x+y +""+(x+y)+y); 的输出结果是(D)
A 2530
B 55
C 2052055
D 25255

38非抽象类实现接口后,必须实现接口中的所有抽象方法,除了abstract外,方法头必须完全一致B
A 正确
B 错误
39 下面不是面向对象的基本原则的是?C
A单一职责原则(Single-Resposibility Principle)
B开放封闭原则(Open-Closed principle)
C抽象类原则(Abstract-Class principle)
D依赖倒置原则(Dependecy-Inversion Principle)
E接口隔离原则(Interface-Segregation Principle)

40 设有下面两个赋值语句:
a = Integer.parseInt(“1024”);
b = Integer.valueOf(“1024”).intValue();
下述说法正确的是(D)
A a是整数类型变量,b是整数类对象。
B a是整数类对象,b是整数类型变量。
C a和b都是整数类对象并且它们的值相等。
D a和b都是整数类型变量并且它们的值相等。

41: 在Java图形用户界面编程中,如果需要显示信息,一般是使用____A___类的对象来实现。
A JLabel
B JButton
C JTextArea
D JtextField

42:在 myjsp.jsp 中,关于下面的代码说法错误的是: ( A)
<%@ page language=“java” import=“java.util.*” errorPage=“error.jsp” isErrorPage=“false” %>
A 该页面可以使用 exception 对象
B 该页面发生异常会转向 error.jsp
C 存在 errorPage 属性时,isErrorPage 是默认为 false
D error.jsp 页面一定要有isErrorPage 属性且值为 true
43:在java语言中,如果你编写一个多线程序,可以使用的方法是(AB)
A 扩展类Thread
B 实现Runnable接口
C 扩展类 Runnable
D 实现接口Thread

44 String str = new String(“abc”),“abc”在内存中是怎么分配的?AC
A 堆
B 栈
C 字符串常量区
D 寄存器
45下面哪几个语句正确的声明一个整型的二维数组(CD)
A int a[][]=new int[][]
B int b[10][10]=new int[][]
C int c[][]=new int[10][10]
D int []d[]=new int[10][10]

46 关于JSP生命周期的叙述,下列哪些为真?AC
A JSP会先解释成Servlet源文件,然后编译成Servlet类文件
B 每当用户端运行JSP时,jsp init()方法都会运行一次
C 每当用户端运行JSP时,jsp service()方法都会运行一次
D 每当用户端运行JSP时,jsp destroy()方法都会运行一次

47 javac的作用是(A)。
A将源程序编译成字节码
B将字节码编译成源程序
C解释执行Java字节码
D调试Java代码

48 下列代码的执行结果是(B)
public class Test {
public static int a = 1;
public static void main(String[] args) {
int a = 10;
a++; Test.a++;
Test t=new Test();
System.out.println(“a=” + a + " t.a=" + t.a);
}
}

a=10 t.a=3
a=11 t.a=2
a=12 t.a=1
a=11 t.a=1

49当使包含 applet 程序的页面从最小化恢复时,以下选项中的哪个方法将被执行?( C)
A paint()
B start()
C destroy()
D stop()

50 以下叙述正确的是A
A 实例方法可直接调用超类的实例方法
B实例方法可直接调用超类的类方法、
C实例方法可直接调用子类的实例方法
D实例方法可直接调用本类的实例方法

51java用()机制实现了进程之间的同步执行D
A监视器
B虚拟机
C多个CPU
D异步调用

52如下代码的输出结果是什么?A

	public class Test {
    public int aMethod(){
        static int i = 0;
        i++;
        return i;
    }
public static void main(String args[]){
    Test test = new Test();
    test.aMethod();
    int j = test.aMethod();
    System.out.println(j);
    }
}

A 0
B 1
C 2
D 编译失败
53:
由3 个“1”和 5 个“0”组成的 8 位二进制补码,能表示的最小整数(B)
A -126
B -125
C -32
D -3
解析:最小的数肯定是负数,首先第一位就是1 ,又因为补码要取反,所以最小的数应该是 1,0000011.除开符号位取反加1后变成 1,1111101。这个数的十进制是-125

54 下面有关java threadlocal说法正确的有?ABCD
A ThreadLocal存放的值是线程封闭,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递
B 线程的角度看,每个线程都保持一个对其线程局部变量副本的隐式引用,只要线程是活动的并且 ThreadLocal 实例是可访问的;在线程消失之后,其线程局部实例的所有副本都会被垃圾回收
C 在Thread类中有一个Map,用于存储每一个线程的变量的副本。
D 对于多线程资源共享的问题,同步机制采用了“以时间换空间”的方式,而ThreadLocal采用了“以空间换时间”的方式

正确答案:A B C D
题目解析:
ThreadLocal类用于创建一个线程本地变量
在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值就是变量的副本,ThreadLocal为每一个使用该变量的线程都提供了一个变量值的副本,每一个线程都可以独立地改变自己的副本,是线程隔离的。通过ThreadLocal的get()方法可以获取该线程变量的本地副本,在get方法之前要先set,否则就要重写initialValue()方法。
ThreadLocal不是用来解决对象共享访问问题的,而主要是提供了保持对象的方法和避免参数传递的方便的对象访问方式。一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。

ThreadLocal类用于创建一个线程本地变量
在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值就是变量的副本,ThreadLocal为每一个使用该变量的线程都提供了一个变量值的副本,每一个线程都可以独立地改变自己的副本,是线程隔离的。通过ThreadLocal的get()方法可以获取该线程变量的本地副本,在get方法之前要先set,否则就要重写initialValue()方法。
ThreadLocal不是用来解决对象共享访问问题的,而主要是提供了保持对象的方法和避免参数传递的方便的对象访问方式。一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。

ThreadLocal类用于创建一个线程本地变量
在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值就是变量的副本,ThreadLocal为每一个使用该变量的线程都提供了一个变量值的副本,每一个线程都可以独立地改变自己的副本,是线程隔离的。通过ThreadLocal的get()方法可以获取该线程变量的本地副本,在get方法之前要先set,否则就要重写initialValue()方法。
ThreadLocal不是用来解决对象共享访问问题的,而主要是提供了保持对象的方法和避免参数传递的方便的对象访问方式。一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。

ThreadLocal类用于创建一个线程本地变量
在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值就是变量的副本,ThreadLocal为每一个使用该变量的线程都提供了一个变量值的副本,每一个线程都可以独立地改变自己的副本,是线程隔离的。通过ThreadLocal的get()方法可以获取该线程变量的本地副本,在get方法之前要先set,否则就要重写initialValue()方法。
ThreadLocal不是用来解决对象共享访问问题的,而主要是提供了保持对象的方法和避免参数传递的方便的对象访问方式。一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。
55:下列有关JAVA异常处理的叙述中正确的是(ABD)
A finally是为确保一段代码不管是否捕获异常都会被执行的一段代码
B throws是用来声明一个成员方法可能抛出的各种非运行异常情况
C final用于可以声明属性和方法,分别表示属性的不可变及方法的不可继承
D throw是用来明确地抛出一个异常情况

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值