1.下列Java常见事件类中哪个是鼠标事件类?()
A:InputEvent
B:KeyEvent
C:MouseEvent
D:WindowEvent
解析:C
InputEvent输入事件,KeyEvent按键事件,MouseEvent鼠标事件,WindowEvent窗体事件。
2.字符界面下接受用户从键盘输入,需要import的包是:( )
A:java.lang包
B:java.awt包
C:java.io包
D:java.applet包
解析:C
这个问题的前提是:字符界面下
前端用户输入、后台程序获取,都是字符流的传输,因此需要导入java.io包。
而java.util中的Scanner则是获取控制台的输入。
因此,答案选C
3.通过HttpServletRequest. getParameter获取的参数.
A:总是采用UTF-8编码
B:总是采用lS08859-1编码
C:由客户端浏览器和Web容器配置共同决定编码
D:由服务器所在的操作系统决定编码
解析:正确答案: C
1、浏览器根据jsp页面开头声明的编码方式对request中参数编码;
2、tomcat默认解码是ISO-8859-1, 但是我们可以显示指定解码格式通过调用 request.setCharacterEncoding("UTF-8"),或者修改tomcat的配置文件server.xml中的编码,添加uriEncoding属性。
4.关于中间件特点的描述.不正确的是()
A:中间件运行于客户机/服务器的操作系统内核中,提高内核运行效率
B:中间件应支持标准的协议和接口
C:中间件可运行于多种硬件和操作系统平台上
D:跨越网络,硬件,操作系统平台的应用或服务可通过中间件透明交互
解析:A
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或OS环境。
(简单来说,中间件并不能提高内核的效率,一般只是负责网络信息的分发处理)
中间件特点的描述:
1、 中间件应支持标准的协议和接口
2.、中间件可运行于多种硬件和操作系统平台上
3.、跨越网络,硬件,操作系统平台的应用或服务可通过中间件透明交互
5.阅读如下代码。 请问,对语句行 test.hello(). 描述正确的有()
packageNowCoder;
classTest {
publicstaticvoidhello() {
System.out.println("hello");
}
}
publicclassMyApplication {
publicstaticvoidmain(String[] args) {
// TODO Auto-generated method stub
Test test=null;
test.hello();
}
}
A:能编译通过,并正确运行
B:因为使用了未初始化的变量,所以不能编译通过
C:以错误的方式访问了静态方法
D:能编译通过,但因变量为null,不能正常运行
解析:A
很简单,静态方法属于静态绑定,编译器根据引用类型所属的静态类型为它绑定其对应的方法。此语句会翻译成invokestatic,该指令的调用中不会涉及this,所以不会依赖对象! 还有引用类型=null,其实就是指该引用在堆中没有对应的对象,但是编译的时候还是能根据声明找到其所属的静态类型。
6.下面哪段程序能够正确的实现了GBK编码字节流到UTF-8编码字节流的转换:
1byte[] src,dst;
A:dst=String.fromBytes(src,"GBK").getBytes("UTF-8")
B:dst=new String(src,"GBK").getBytes("UTF-8")
C:dst=new String("GBK",src).getBytes()
D:dst=String.encode(String.decode(src,"GBK")),"UTF-8" )
解析:B
操作步骤就是先解码再编码
用new String(src,"GBK")解码得到字符串
用getBytes("UTF-8")得到UTF8编码字节数组
7.关于spring说法错误的是()
正确答案: D 你的答案: D (正确)
A:spring是一个轻量级JAVA EE的框架集合
B:spring是“依赖注入”模式的实现
C:使用spring可以实现声明事务
D:spring提供了AOP方式的日志系统
解析:D,,日志系统是使用springAOP与日志框架配合提供日志系统
8.对文件名为Test.java的java代码描述正确的是()
classPerson {
String name = "No name";
publicPerson(String nm) {
name = nm;
}
}
classEmployee extends Person {
String empID = "0000";
publicEmployee(String id) {
empID = id;
}
}
publicclassTest {
publicstaticvoidmain(String args[]) {
Employee e = newEmployee("123");
System.out.println(e.empID);
}
}
正确答案: C 你的答案: B (错误)
A:输出:0000
B:输出:123
C:编译报错
D:输出:No name
解析:C
子类的构造方法总是先调用父类的构造方法,如果子类的构造方法没有明显地指明使用父类的哪个构造方法,子类就调用父类不带参数的构造方法。
而父类没有无参的构造函数,所以子类需要在自己的构造函数中显示的调用父类的构造函数。
9.ava中关于继承的描述正确的是()
A:一个子类只能继承一个父类
B:子类可以继承父类的构造方法
C:继承具有传递性
D:父类一般具有通用性,子类更具体
解析:ACD
子类不可以继承父类的构造方法,只可以调用父类的构造方法。子类中所有的构造函数都会默认访问父类中的空参数构造函数,这是因为子类的构造函数内第一行都有默认的super()语句。super()表示子类在初始化时调用父类的空参数的构造函数来完成初始化。一个类都会有默认的空参数的构造函数,若指定了带参构造函数,那么默认的空参数的构造函数,就不存在了。这时如果子类的构造函数有默认的super()语句,那么就会出现错误,因为父类中没有空参数的构造函数。因此,在子类中默认super()语句,在父类中无对应的构造函数,必须在子类的构造函数中通过this或super(参数)指定要访问的父类中的构造函数。
10:.针对以下代码,哪些选项执行后是true的:()
classCompareReference{
publicstaticvoidmain(String [] args){
floatf=42.0f;
floatf1[]=newfloat[2];
floatf2[]=newfloat[2];
float[] f3=f1;
longx=42;
f1[0]=42.0f;
}
}
A:f1==f2
B:x==f1[0]
C:f1==f3
D:f2==f1[1]
解析:B C
B、C f1、f2、f3是数组,是引用类型,f、x是基本类型。基本类型之间的比较,应该会将低精度类型自动转为高精度类型再比较,B选项是long和float比较,相当于long和long比较,所以B对。