兄弟们,帮忙做套题吧
一. 单项选择题 (每题1分,共30分)
1. Java的字符类型是采用以下哪种字符集( )
A)Unicode字符集 B)ASCII字符集
2. Java源文件的扩展名为 ( )
A).exe B).com C).java D).class
3. 以下哪个标识符不合法 ( )
A)$dollar B)8dollar C)_dollar D)Dollar_9
4. 以下哪种数据类型的大小是8位 ( )
A)boolean B)char C)int D)float
5. 以下哪类Java程序包含main(String args[])方法 ( )
A)JSP程序 B)Java Applet程序 C)Java Application程序 D)Java Servlet程序
6. 以下哪种不是Java程序的注释形式 ( )
A)//注释内容 B)/*注释内容*/ C)/**注释内容*/ D)//*注释内容*/
7. Java采用哪个语句导入包 ( )
A)import B)include
8. 以下哪种转化需要强制类型转换 ( )
A)byte类型转化为short类型 B)float类型转化为double类型
C)int类型转化为long类型 D)int类型转化为short类型
9. int ml[][]=new int[5][7];选择正确的答案 ( )
A)ml.length=7 B)ml.length=35 C)ml.length=5 D)ml.length的值不能确定
10. 选出正确的说法 ( )
A)抽象类中不可以定义非抽象方法。 B)final类可以有子类。
C)抽象方法可以存在于非抽象类中。 D)static方法可以处理static成员变量
11. protected成员不可以被以下哪种情况引用 ( )
A)该类自身 B)其它包中的非子类 C)其它包中该类的子类 D)该类的所有子类
12. 以下哪类对象可以建立一个服务器端等待接收客户的套接字 ( )
A)Socket B)ServerSocket C)DatagramPacket D)DatagramSocke
13. 下面哪个选项可以完成对象的初始化 ( )
A)构造方法 B)静态初始化器 C)静态域 D)静态方法
14. 以下哪组修饰符不能同时修饰一个方法 ( )
A)abstract public B)public final C)public static D)abstract private
15. 以下哪个关键字可以抛出异常 ( )
A)transient B)finally C)throw D)static
16.main()方法的返回类型是 ( )
A)int B)voidC)BooleanD)float
17.在设计Application程序时,设main()方法的参数是args,则用( )可以获得命令行参数的个数。
A) args[0].length B) args[0].length()C) args.length D) args.length()
18.当用户最小化包含Applet的窗口时,将执行Applet的( ) 方法。
A) init() B) start() C) stop() D) destroy()
19. 以下不属于面向对象编程特征的是 ( )
A) 封装B) 指针操作C) 多态性D) 继承
20. 线程调用了sleep()方法后,该线程将进入以下哪种状态 ( )
A) 可运行状态B) 运行状态C) 阻塞状态D) 终止状态
21. 以下关于接口的说法,哪个是正确的( )
A) 接口与抽象类是相同的概念 B) 实现一个接口必须实现接口的所有方法
C) 接口之间不能有继承关系D) 一个类不不可实现多个接口
22. 关于while和do-while循环,以下说法正确的是 ( )
A) 两种结构除了格式不同外,功能完全相同
B) 与do-while语句不同的是,while语句的循环体至少要执行一次
C) do-while语句首先计算终止条件,当条件满足时,才去执行循环体中的语句
D) 以上都不对
23. java 中以下那个类提供随机访问文件的功能 ( )
A) RamdomAccessFile类B) RandomFile 类
C) File 类D) AcessFile类
24. 以下哪个单词是Java中的合法关键字 ( )
A) FloatB) thisC) stringD) unsigned
25. 在java的一个异常处理中,哪个语句块可以有多个 ( )
A) catchB) finallyC) tryD) throws
26. Java程序的执行过程中用到的JDK工具,其中java.exe是指( )
A) Java文档生成器B) Java解释器
C) Java编译器 D) Java类分解器
27. Java编程所必须的默认引用包为 ( )
A) java.sys包 B) java.lang包
C) java.new包 D) 以上都不是
28. 创建新线程有两种方法,其中一种方法是定义类为以下哪类的子类( )
A) ThreadB) ThrowableC) AppletD. Button
29. int k, i = 6;
k = i ++;
执行完这两行代码后,则( )
A) k = 6 i = 6B) k = 7 i = 6C) k = 6 i = 7D) k = 7 i = 7
30. short型变量的数值范围是( )
A) -2 15 ~ 2 15 -1B) 0 ~ 2 16 -1C) -2 31 ~ 2 31 -1D) -2 7 ~ 2 7 -1
二. 填空题 (每空1分,共20分)
1.运行Java字节码的理想计算机称为 。
2.Java程序分为两种类型,分别是 和 。
3.若有int i=2,b=0;表达式b=(i++)+(i++)+(i++)的值是 。
4.如果子类的一个方法与父类中的一个方法名称相同、返回类型相同且参数列表也相同,则称为方法的 。
5.把对象实例化可以生成多个对象,使用 运算符为对象分配内存空间。
6.Throwable类有两个子类: 类和Exception类。
7.线程的创建有两种方法:实现 接口和继承Thread类。
8.如果x=1,y=2,z=3;则 u = !((x>=--y||y++<=z--)&&y==z);则:u = ,x= ,y= ,z= 。
9.如果x=1,y=2,z=3;则 u = x>y ? (x>z?x:y): (y>z? y: (z>x?z:x));则u = 。
10.在调度多线程时,Java采用 调度方式,即高优先级的线程具有剥夺低优先级线程执行的权力,对于相同优先级线程,则遵循 原则。
11.异常处理的基本结构分为三部分,每部分的关键字分别是 、 和 。
12.法重载指在同一类中有多个方法具有相同的 和不同的 。
三. 程序分析 (30分)
1.(6分)Test1.java的源文件如下:
class Test1
{
public static void main(String args[])
{
int testScore,level;
char grade = ' ';
if(args.length!=1)
{
System.out.println("Usage: java Level TestScore");
System.exit(0);
}
testScore=Integer.parseInt(args[0]);
level=testScore/10;
switch (level)
{
case 10:
case 9: grade='A'; break;
case 8: grade='B'; break;
case 7: grade='C'; break;
case 6: grade='D'; break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0: grade='E';
}
System.out.println(testScore+" is "+ grade +"\n");
}
}
若以下列方式运行编译后的Test1程序,写出相应的运行结果:
1)java Test1 运行结果:( )
2)java Test1 94 运行结果:( )
3)java Test1 88 运行结果:( )
4)java Test1 46 运行结果:( )
2.(6分)Test2.java的源文件如下:
public class Test2
{
public static void main(String args[])
{
String FirstString = "Hello java!";
String SecondString = "Hello Java!";
System.out.println(FirstString.equals(SecondString));
System.out.println(FirstString.equalsIgnoreCase(SecondString));
System.out.println(FirstString.indexOf((int)'j'));
System.out.println(FirstString.indexOf((int)'o',3));
System.out.println(SecondString.lastIndexOf((int)'J'));
System.out.println(SecondString.lastIndexOf((int)'a',8));
}
}
请写出运行编译后的Test2程序的屏幕显示结果
3.(6分)Test3.java 的源文件如下:
abstract class PhoneCard
{
double balance;
abstract void performDial();
PhoneCard()
{
balance=20.0;
}
int TimeLeft()
{
int times;
for(times=0;balance>1e-5;times++)
{
performDial();
}
return times;
}
}
class PhoneCard200 extends PhoneCard
{
double balance;
PhoneCard200(double b)
{
super();
balance = b;
}
void performDial()
{
super.balance-=0.5;
balance-=0.3;
}
void ShowResult()
{
System.out.println("super.balance= "+super.balance);
System.out.println("balance= "+balance);
}
}
public class Test3
{
public static void main(String args[])
{
PhoneCard200 my200 = new PhoneCard200(16.0);
my200.TimeLeft();
my200.ShowResult();
}
}
请写出运行编译后的Test3程序的屏幕显示信息
4.(6分)Test4.java 的源文件如下:
abstract class PhoneCard
{
double balance;
abstract boolean performDial();
double getBalance()
{
return (balance-0.2);
}
}
abstract class Number_PhoneCard extends PhoneCard
{
long cardNumber;
int password;
boolean connected;
boolean performConnection(long cn,int pw)
{
if(cn==cardNumber&&pw==password)
{
connected=true;
return true;
}
else
{
connected=false;
return false;
}
}
}
class P200_Card extends Number_PhoneCard
{
double additoryFee;
P200_Card(long cn,int pw)
{
cardNumber = cn;
password = pw;
additoryFee=0.2;
}
P200_Card(long cn,int pw,double b)
{
cardNumber = cn;
password = pw;
balance = b;
additoryFee=0.1;
}
boolean performDial()
{
if(balance>(0.3+additoryFee))
{
balance-=(0.3+additoryFee);
return true;
}
else
return false;
}
boolean performDial(long cn,int pass)
{
if(performConnection(cn,pass))
return performDial();
else
return false;
}
double getBalance()
{
if(connected)
return balance;
else
return -1;
}
}
public class Test4
{
public static void main(String args[])
{
P200_Card my200 = new P200_Card(2004101601,135790,30);
if(my200.performDial(2004101601, 135790 ))
System.out.println("电话卡余额: "+my200.getBalance());
}
}
请写出运行编译后的Test4程序的屏幕显示信息
5.(6分)Test5.java 的源文件如下:
interface ShowBrand
{
void show(String s);
}
class Bike implements ShowBrand
{
public void show(String s)
{
System.out.println("*"+s);
}
}
class Plane implements ShowBrand
{
public void show(String s)
{
System.out.println("#"+s);
}
}
class Test5
{
public static void main(String args[])
{
ShowBrand sb;
sb=new Bike();
sb.show("Giant");
sb=new Plane();
sb.show("Airbus");
}
}
请写出运行编译后的Test5程序的屏幕显示信息
四. 编程题 (20分)
1.(10分)摄氏温度与华氏温度的转换公式为:华氏温度 = 摄氏温度*9/5 + 32。请编写完整的程序完成如下功能:计算0~100℃之间每间隔10℃的摄氏到华氏温度的转换表,并且输出计算结果。
2.(10分)声明一个RandomNum类,该类包含一个长度为10的int数组array,在构造方法中对array进行初始化;该类还定义了方法getMaxNum(),该方法返回array中的最大数。再声明一个DisplayMaxNum类,该类包含main()方法,要求从键盘任意输入10个数值,在main()中调用RandomNum类中的getMaxNum()方法获得所输入的10个数值中的最大值,并显示最大值。
[解决办法]
前6个答案: ADB DCD
这题挺太简单了 应该是个期末试卷吧
[解决办法]
[解决办法]
都是基础啊,楼主是想偷懒吧