又又又是复盘

下列哪个类的声明是正确的?
A. abstract final class HI{}
B. abstract private move(){}
C. protected private number;
D. public abstract class Car{}

A只能有final和abstract的一个,因为final是最终类,不能继承,必须可以创建实例,而abstract是抽象类,只能继承,不有实例。冲突了,所以不对。
B是抽象方法,不能有方法体。所以末尾不是{}而是;才对
C中 访问修饰符只能有一个,而且对象没有类型。
D正确,这是抽象类。


关于依赖注入,下列选项中说法错误的是()
A. 依赖注入能够独立开发各组件,然后根据组件间关系进行组装
B. 依赖注入使组件之间相互依赖,相互制约
C. 依赖注入提供使用接口编程
D. 依赖注入指对象在使用时动态注入

依赖注入是为了使组件之间降低依赖,低耦合,高内聚


13、下列代码编译和运行的结果是:()
public class Threads4{
public static void main(String[] args){
new Threads4().go();
}
public void go(){
Runnable r=new Runnable(){
public void run(){
System.out.print(“foo”);
}
};
Thread t=new Thread®;
t.start();
}
}

A. 编译错误
B. 抛出运行时异常
C. 输出:foo
D. 代码正常运行,但是无输出

调用go方法,go方法内实现多线程打印foo,选C没毛病


15、
Integer a = 1;
Integer b = 1;
Integer c = 500;
Integer d = 500;
System.out.print(a == b);
System.out.print(c == d);
上述代码返回结果为:
A. true、true
B. true、false
C. false、true
D. false、false
自动封装的值上限为128超过了就新定义了


17、Thread. sleep()是否会抛出checked exception?
A. 会
B. 不会

Thread.sleep() 和 Object.wait(),都可以抛出 InterruptedException。这个异常是不能忽略的,因为它是一个检查异常(checked exception)


设m和都是int类型,那么以下for循环语句的执行情况是( )
for (m = 0, n = -1; n = 0; m++, n++)
n++;

A. 循环体一次也不执行 循环体执行一次 是无限循环 有限次循环 循环结束判断条件不合法 运行出错
B. 循环体执行一次 是无限循环
C. 有限次循环
D. 循环结束判断条件不合法
for 循环的结束判定条件 是 boolean型 n = 0 是 int 类型 会有编译异常


20、假定Base b = new Derived(); 调用执行b.methodOne()后,输出结果是什么?
public class Base
{
public void methodOne()
{
System.out.print(“A”);
methodTwo();
}

public void methodTwo()
{
System.out.print(“B”);
}
}

public class Derived extends Base
{
public void methodOne()
{
super.methodOne();
System.out.print(“C”);
}

public void methodTwo()
{
super.methodTwo();
System.out.print(“D”);
}
}

A. ABDC
B. AB
C. ABCD
D. ABC

这是一道类多态的向上转型题。
Base b = new Derived();
向上转型:父类只能调用父类方法或者子类覆写后的方法,而子类中的单独方法则是无法调用的。
因此:
调用的顺序是:(1)、(2)、(3)、(4)、(5)、(6)、(7) ; 得到的结果是:ABDC
class Base
{ public void methodOne() // (3)
{
System.out.print(“A”);
methodTwo(); //执行到这里的时候调用子类的覆盖方法 (4)
} public void methodTwo() // (7)
{
System.out.print(“B”);
}
}
class Derived extends Base { public void methodOne() // (1)
{ super.methodOne(); // (2)
System.out.print(“C”);
} public void methodTwo() //该方法为重写了父类的方法 (5)
{ super.methodTwo(); //(6)
System.out.print(“D”);
}
}


22、Java中用正则表达式截取字符串中第一个出现的英文左括号之前的字符串。比如:北京市(海淀区)(朝阳区)(西城区),截取结果为:北京市。正则表达式为()
A. “.?(?=\()"
B. ".
?(?=()”
C. “.(?=\()"
D. ".
(?=()”

前面的.*?是非贪婪匹配的意思, 表示找到最小的就可以了
(?=Expression) 顺序环视,(?=\()就是匹配正括号

String text = “北京市(海淀区)(朝阳区)(西城区)”;
Pattern pattern = Pattern.compile(".*?(?=\()" );
Matcher matcher = pattern.matcher(text);
if (matcher.find()) {
System.out.println(matcher.group(0));
}


25、类B从类A派生,则类B可以访问类A中的( )成员?(多选)
A. public成员
B. private成员
C. protected成员
D. 所有数据成员
E. 所有函数成员
DE 数据成员和函数成员默认是default访问权限,同一个包下的所有类都可以访问
类B不一定和类A同包,所以DE才错


26、Java对象的初始化方式有( )(多选)
A. 初始化块
B. 构造器
C. 定义变量时指定初始化值
D. 其它各项都不对
对象的初始化方式:
1.new时初始化 ;
2.静态工厂 newInstance;
3.反射Class.forName();
4.clone方式;
5.反序列化;


27、下面哪些接口直接继承自Collection接口()(多选)
A. List
B. Map
C. Set
D. Iterator
在这里插入图片描述


40、如果要建立一个java.com.computer的包放入当前java类,下列叙述正确的是? ( )
A. 在代码中,不一定是第一句,只要是类定义前,加入package语句即可
B. 只需在代码中加入“package java.com;”一个语句
C. 必须在代码中加入“package java.com;”和“package java.com.computer;”两个语句
D. 只需在代码中第一条非注释性语句加入“package java.com.computer;”

package语句必须作为源文件的第一条非注释性语句,一个源文件只能指定一个包,只能包含一条package语句


Which statement at PointX on line I allows this code to compile and run?
A. import java.io.PrintWriter;
B. include java.io.PrintWriter;
C. import java.io.OutputStreamWriter;
D. include java.io.OutputStreamWriter;
E. no statement is needed.

首先排除include和最后一个
其次:
1.PrintWriter
2.OutputStreamWriter
注意:
在创建OutputStreamWriter的时候,使用的是类的全名称。所以不需要使用import
故:选择A


49、下列在Java语言中关于数据类型和包装类的说法,正确的是()
A. 基本(简单)数据类型是包装类的简写形式,可以用包装类替代基本(简单)数据类型
B. long和double都占了64位(64bit)的存储空间。
C. 默认的整数数据类型是int,默认的浮点数据类型是float。
D. 和包装类一样,基本(简单)数据类型声明的变量中也具有静态方法,用来完成进制转化等。

A,包装和基本类型不是同一个概念
B,
long和double都占了64位(64bit)的存储空间
C,默认的浮点数据类型是double,如果要指明使用float,则需要在后面加f
D,基本数据类型是没有静态方法的,但是基本数据类型的包装类却有


以下说法错误的是()

A. 虚拟机中没有泛型,只有普通类和普通方法
B. 所有泛型类的类型参数在编译时都会被擦除
C. 创建泛型对象时请指明类型,让编译器尽早的做参数检查
D. 泛型的类型擦除机制意味着不能在运行时动态获取List中T的实际类型

D 可以通过反射机制


关于继承和实现说法正确的 是 ( )
A.类可以实现多个接口,接口可以继承(或扩展)多个接口
B.类可以实现多个接口,接口不能继承(或扩展)多个接口
C.类和接口都可以实现多个接口
D.类和接口都不可以实现多个接口

1.类与类之间的关系为继承,只能单继承,但可以多层继承。
2.类与接口之间的关系为实现,既可以单实现,也可以多实现。
3.接口与接口之间的关系为继承,既可以单继承,也可以多继承。 故为A


已知a = [1, 2, 3]和b = [1, 2, 4],那么id(a[1])==id(b[1])的执行结果 ()
A.TRUE
B.FALSE
python中对于小整数对象有一个小整数对象池,范围在[-5,257)之间。对于在这个范围内的征数,不会新建对象,直接从小整数对象池中取就行。


1 Web程序中,当前用户上下文信息应该保存在下面哪个对象中()

A.page
B.request
C.session
D.Application

lonecloud
当前用户上下文信息:session
appication:当前应用
pageContext:当前页面
request:当前请求


在try的括号里面有return一个值,那在哪里执行finally里的代码?
A.不执行finally代码
B.return前执行
C.return后执行

1、不管有木有出现异常,finally块中代码都会执行;
2、当try和catch中有return时,finally仍然会执行;
3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,不管finally中的代码怎么样,返回的值都不会改变,仍然是之前保存的值),所以函数返回值是在finally执行前确定的;
4、finally中最好不要包含return,否则程序会提前退出,返回值不是try或catch中保存的返回值。


下面有关struts1和struts2的区别,描述错误的是?
A.Struts1要求Action类继承一个抽象基类。Struts 2 Action类可以实现一个Action接口
C.Struts1 Action对象为每一个请求产生一个实例。Struts2 Action是单例模式并且必须是线程安全的
C.Struts1 Action 依赖于Servlet API,Struts 2 Action不依赖于容器,允许Action脱离容器单独被测试
D.Struts1 整合了JSTL,Struts2可以使用JSTL,但是也支持OGNL
struts1是单线程,
struts2是多线程,


26
在 myjsp.jsp 中,关于下面的代码说法错误的是: ( )
<%@ page language=“java” import=“java.util.*” errorPage=“error.jsp” isErrorPage=“false” %>

A.该页面可以使用 exception 对象
B.该页面发生异常会转向 error.jsp
C.存在 errorPage 属性时,isErrorPage 是默认为 false
D.rror.jsp 页面一定要有isErrorPage 属性且值为 true
A
当isErrorPage ="false"时,用errorPage=“error.jsp”(isErrorPage默认是false)
当isErrorPage ="true"时,页面会直接使用exception


(多选)下面哪些具体实现类可以用于存储键,值对,并且方法调用提供了基本的多线程安全支持:()
A.java.util.ConcurrentHashMap
B.java.util.Map
C.java.util.TreeMap
D.java.util.SortMap
E.java.util.Hashtable
线程安全的map:HashTable,SynchronizedMap,ConcurrentHashMap


(多选)些叙述是对的()
A.一个线程被创建,它就立即开始运行。
B.start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行。
C.个线程因为抢先机制而停止运行,它被放在可运行队列的前面。
D.线程可能因为不同的原因停止并进入就绪状态。

对于选项A,当一个线程因为抢先机制而停止运行,它被放在可运行队列的后面
对于选项B
一个线程可能由于之前资源不可用导致进行阻塞状态,然后当资源可用的时候,就会进入到就绪态度.
另外一种就是线程的时间片用完了之后也会从运行态转为就绪态.
当然还有一种就是优先级更高的线程会抢占当前线程,使当前线程进入就绪态.
对于选项C,D
使用start方法只能将进行放到就绪的队列中,并不能立即执行.


以下说法中正确的有?
A.StringBuilder是 线程不安全的
B.Java类可以同时用 abstract和final声明
C.HashMap中,使用 get(key)==null可以 判断这个Hasmap是否包含这个key
D.volatile关键字不保证对变量操作的原子性

D选项感觉有点争议,volitile保证可见性和有序性,不保证原子性


下列关于管道(Pipe)通信的叙述中,正确的是()?
A.进程对管道进行读操作和写操作都可能被阻塞
B.一个管道只能有一个进程或一个写进程对其操作
C.一个管道可实现双向数据传输
D.管道的容量仅受磁盘容量大小限制

A.正确,因为管道为空,读操作会被阻塞;管道满了,写操作会被阻塞
B.可以有多个进程对其读;也可以有多个进程写,只不过不能同时写。并且题目没有说“同时”,B不对
C.匿名管道只能单向;命名管道可以双向;所以C过于绝对
D.管道是内存中的,所以D不对


(多选)servlet周期包含哪些:
A.初始化
B.销毁
C.请求处理
D.开始
init() --> 初始化
service() --> 处理请求
destory () --> 销毁(停止)


关于Java的一些概念,下面哪些描述是正确的:( )

A.所有的Java异常和错误的基类都是java.lang.Exception, 包括java.lang.RuntimeException
B.通过try … catch … finally语句,finally中的语句部分无论发生什么异常都会得到执行
C.java中所有的数据都是对象
D.Java通过垃圾回收回收不再引用的变量,垃圾回收时对象的finallize方法一定会得到执行
E.Java是跨平台的语言,无论通过哪个版本的Java编写的程序都能在所有的Java运行平台中运行
F.Java通过synchronized进行访问的同步,synchronized作用非静态成员方法和静态成员方法上同步的目标是不同的

A、java异常和错误的基类Throwable,包括Exception和Error
B、try…catch…finally finally不管什么异常都会执行
C、java是面向对象的,但是不是所有的都是对象,基本数据类型就不是对象,所以才会有封装类的;
D、如果是等待清理队列中如果又被调用,则不会执行finallize方法
E、JAVA跨平台性 实现在任意平台的java程序都可以在其他平台运行
F、synchronized实现方式:三种

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值