网站首页 > java教程 正文
不定项选择题(40题,每题2.5分,总分100分,测试时间2小时)
第一题:当试图编译并运行下面程序时会出现什么结果()(单选)
class A{
public int getNumber(int a){
return a+1;
}
}
class B extends A{
public int getNumber(int a, char c){
return a+2;
}
public static void main(String[] args){
B b=new B();
System.out.println(b.getNumber(0));
}
}
a.编译错误
b.运行错误
c.1
d.2
第二题:当编译并运行下面程序时会出现什么结果( )(单选)
public class MyAr{
public static void main(String argv[]){
int[] i = new int[5];
System.out.println(i[5]);
}
}
a.编译错误
b.运行错误
c.输出0
d.输出“null”
第三题:final、finally、finalize三个关键字的区别是()(多选)
a.final是修饰符(关键字)可以修饰类、方法、变量
b.finally在异常处理的时候使用,提供finally块来执行任何清除操作
c.finalize是方法名,在垃圾收入集器将对象从内存中清除出去之前做必要的清理工作
d.finally和finalize一样都是用异常处理的方法
第四题:当编译并运行下面程序时会发生什么结果()(单选)
public class Bground extends Thread{
public static void main(String argv[]){
Bground b = new Bground();
b.run();
}
public void start(){
for (int i = 0; i <10; i++){
System.out.println("Value of i = " + i);
}
}
}
a.编译错误,指明run方法没有定义
b.运行错误,指明run方法没有定义
c.编译通过并输出0到9
d.编译通过但无输出
第五题:在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该使用()关键字来声明父类的这些方法。(单选)
a.Final
b.Static
c.Abstract
d.Void
第六题:当编译并运行下面程序时会发生什么结果:(单选)
public class Hope{
public static void main(String argv[]){
Hope h = new Hope();
}
protected Hope(){
for(int i =0; i <10; i ++){
System.out.println(i);
}
}
}
a.编译错误,构造方法不能被声明为protected
b.运行错误,构造方法不能被声明为protected
c.编译并运行输出0到10
d.编译并运行输出0到9
第七题:下列说法正确的是?()(多选)
a.数组有length()方法
b.String有length()方法
c.数组有length属性
d.String有length属性
第八题:当编译并运行下面的程序时会发生什么结果?( )(单选)
public class Test{
public static void stringReplace(String text){
text=text+”c”;
}
public static void bufferReplace(StringBuffer text){
text=text.append("c");
}
public static void main(String args[]){
String textString=new String("java");
StringBuffer textBuffer=new StringBuffer("java");
stringReplace(textString);
bufferReplace(textBuffer);
System.out.println(textString+textBuffer);
}
}
a.编译并运行输出javac javac
b.编译并运行输出java java
c.编译并运行输出java javac
d.编译并运行输出 javac java
第九题:以下哪些表达式返回为真()(多选
String a=”My field1”;
String b=”My field1”;
String c=new String(”My field1”);
String d=new String(”My field1”);
A.a ==b
B.a==c
C.c==d
D.a.equals(b)
E.a.equals(c)
F.c.equals(d)
第十题:当编译和运行下面程序时,哪项描述可以最准确地表达发生了什么事情( )(单选
public class MyAr{
public static void main(String argv[]) {
MyAr m = new MyAr();
m.amethod();
}
public void amethod(){
int i;
System.out.println(i);
}
}
a.编译并输出0
b.编译错误
c.编译并输出null
d.运行错误
第十一题:给定如下java代码程序片断:
class A{
public A(){
System.out.println(“A”);
}
}
class B extends A{
public B(){
System.out.println(“B”);
}
public static void main(String[] args){
B b=new B();
}
}
按照上述程序将()(单选)
a.不能通过编译
b.通过编译,输出为AB
c.通过编译,输出为B
d.通过编译,输出为A
第十二题:关于线程,以下说法正确的是:()(多选)
a.sleep方法执行时会释放对象锁。
b.wait方法执行时会释放对象锁。
c.sleep方法必须写在同步方法或同步块中
d.wait方法必须写在同步方法或同步块中
第十三题:给定JAVA代码如下,编译运行后,输出结果是()(单选)
public class test{
static int i;
public int test(){
i++;
return i;
}
public static void main(String args[]){
Test test=new Test();
test.test();
System.out.println(test.test());
}
}
a.0
b.1
c.2
d.3
第十四题:给定JAVA代码如下,关于super的用法,以下描述正确的是( )(单选)
class C extends B
{
public C()
{
super();
}
}
a.用来调用类B中定义的super()方法
b.用来调用类C中定义的super()方法
c.用来调用类B中的无参构造方法
d.用来调用类B中第一个出现的构造方法
第十五题:哪些是Thread类中本身的方法(不包括继承) ( )(多选)
a.start()
b.sleep(long mi)
c.wait()
d.notify()
第十六题:下面哪些为真()(多选)
a.接口里可定义变量,并且变量的值不能修改
b.任何情况下,类都不能被private修饰
c.类可以被protected修饰
d.接口不能实例化
第十七题:下面哪些是正确的描述了关键字synhronized ( )(单选)
a.允许两个进程并行运行但其之间相互通信
b.保证任何时候只有一个线程访问一个方法或对象
c.保证两个或多个进程同时启动和结束
d.保证两个或多个线程同时启动和结束
第十八题:下列哪一种叙述是正确的()(单选)
a.abstract修饰符可修饰属性、方法和类
b.抽象方法的body部分必须用一对大括号{ }
c.声明抽象方法,大括号可有可无
d.声明抽象方法不可写出大括号
第十九题:下面关于网络通信正确的描述是()(多选)
a.TCP/IP协议是一种不可靠的网络通信协议。
b.UDP协议是一种可靠的网络通信协议。
c.TCP/IP协议是一种可靠的网络通信协议。
d.UDP协议是一种不可靠的网络通信协议。
第二十题:在Java中,下面关于抽象类的描述正确的是()(多选)
a.抽象类可以被实例化
b.如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类
c.抽象类的方法都必须是抽象的
d.声明抽象类必须带有关键字abstract
第二十一题:给定java代码如下,编译运行结果是()(单选)
public class Test{
public int count(){
return 1%9;
}
public static void main(String[]args){
System.out.println(count());
}
}
a.编译错误
b.运行错误
c.正常运行,输出1
d.正常运行,输出0
第二十二题:将对象序列化,要实现哪个接口()(单选)
a.Cloneable
b.Runnable
c.Serializable
d.Comparator
第二十三题:以下代码输出结果为( ) (单选)
public class Test{
public static String output="";
public static void foo(int i){
try {
if(i==1){
throw new Exception();
}
output +="1";
} catch(Exception e){
output+="2";
return;
} finally{
output+="3";
}
output+="4";
}
public static void main(String args[]){
foo(0);
foo(1);
System.out.println(output);
}
}
a.1342
b.123
c.134234
d.13423
第二十四题:在JAVA中,()接口位于集合框架的顶层( ) (单选)
a.Collection
b.Collections
c.List
d.Set
第二十五题:在Java中,下列()类不能派生出子类( ) (单选)
a.public class MyClass{}
b.class MyClass{}
c.abstract class MyClass{}
d.final class MyClass{}
第二十六题:启动一个线程,应调用什么方法()。(单选)
a.start()
b.run()
c.begin()
d.notify)(
第二十七题:在java中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是( )(单选)
a.interface A extends B,C
b.interface A implements B,C
c.class A implements B,C
d.class A implements B,implements C
第二十八题:在Java中,以下定义数组的语句正确的是( )(单选)
a.int t[10]=new int[];
b.char a[]="hefg";
c.int t[]=new int[10];
d.double d=new double[10];
第二十九题:给定一个java程序的main方法的代码片段如下:假如d目录下不存在abc.txt文件,现运行该程序,下面的结果正确的是():(单选)
try{
PrintWriter out =
new PrintWriter(new FileOutputStream("d:/abc.txt"));
String name="chen";
out.print(name);
}catch(Exception e){
System.out.println("文件没有发现!");
}
a.将在控制台上打印:"文件没有发现!"
b.正常运行,但没有生成文件abc.txt
c.运行后生成abc.txt,但该文件中可能无内容
d.运行后生成abc.txt,该文件内容为:chen
第三十题:集合框架中,要实现对集合里的元素进行自定义排序,要实现哪个接口()(单选)
a.Cloneable
b.Runnable
c.Serializable
d.Comparator
第三十一题:下面哪些代码可放在Here处(多选)
class Super{
protected float getNum(){return 3.0f;}
}
public class Sub extends Super{
//Here
}
a.float getNum(){return 4.0f;}
b.public void getNum(){}
c.private void getNum(double d){}
d.public double Getnum(){return 4.0d;}
e.public float getNum(){return 9;}
第三十二题:在Java语言中,如果你编写一个多线程序,可以使用的方法是()。(多选)
a.扩展类Thread
b.实现Runnable接口
c.扩展类Runnable
d.实现接口Thread
第三十三题:下面哪些接口直接继承自Collection接口()(多选)
a.List
b.Map
c.Set
d.Iterator
第三十四题:关于HashMap和Hashtable正确的说法有()(多选)
a.都实现了Map接口
b.Hashtable类不是同步的,而HashMap类是同步的
c.Hashtable 不允许null键或值
d.HashMap 不允许null键或值
第三十五题:下面关于构造方法的说法正确的是()(多选)
a.构造方法不能被继承
b.构造方法不能被重写
c.构造方法不能被重载
d.构造方法不能声明为private
第三十六题:研究下面的JAVA代码( )(单选)
public class TestException {
/**
* @param args
*/
public static void main(String[] args) {
int a[] = {0,1,2,3,4};
int sum=0;
try
{
for(int i=0;i<6;i++)
{
sum+=a[i];
}
System.out.println("sum="+sum);
}
catch(java.lang.ArrayIndexOutOfBoundsException e)
{
System.out.println("数组下标越界");
}
finally
{
System.out.println("程序结束");
}
}
}
输出结果将是()
a.10 数组下标越界 程序结束
b.10 程序结束
c.数组下标越界 程序结束
d.程序结束
第三十七题:研究下面JAVA代码,输出结果为()(单选)
public class TestException {
public static void main(String[] args) {
try
{
System.out.println("hello,jr");
System.exit(0);
}
finally
{
System.out.println("88");
}
}
}
a.hello,jr
b.88
c.hello,jr后是88
d.不能编译
第三十八题:考虑下面的代码,说出哪些重载了ConstOver构造器?(多选)
public class ConstOver{
public ConstOver(int x,int y,int z){}
}
a.ConstOver(){}
b.protected int ConstOver(){}
c.private ConstOver(int z,int y,byte z){}
d.public void ConstOver(byte x,byte y,byte z){}
e.public Object ConstOver(int x,int y,int z){}
第三十九题:有以下代码:
package com;
public class Test {
public static void main(String[] args) {
Test test = new Test();
//here
}
}
在here处加上以下什么语句,可以获得Class对象?(多选)
a.Class c = new Class();
b.Class c = test.class;
c.Class c = Test.class;
d.Class c = test.getClass();
e.Class c = Class.forName(“com.Test”);
f.Class c = Class.forName(“Test”);
第四十题:能用来修饰interface方法的有( )(多选)
a.private
b.public
c.protected
d.static
e.不加修饰符
需要答案的小伙伴,先关注我,然后可以私信关键词【答案】呦
看到这里的朋友点个赞呀,有收获的小伙伴,给个评论呀!!!
猜你喜欢
- 2024-12-15 java面向对象中多态容易走人的误区
- 2024-12-15 面向对象编程的基本概念(二)【Java编程基础第2篇】
- 2024-12-15 面向对象和面向过程的区别 面向对象和面向过程的区别在于
- 2024-12-15 java面向对象程序设计:把大象装进冰箱
- 2024-12-15 Android应用编程基础第18篇:Java面向对象技术点补
- 2024-12-15 Java面向对象之接口——interface
- 2024-12-15 从零开始学JAVA-04.JAVA面向对象入门第一季
- 2024-12-15 Java 学习之面向对象思想、类、对象
- 2024-12-15 Java学习之面向对象——Java基础篇
- 2024-12-15 面向对象设计的工作步骤一 面向对象设计的五大原则
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)