JavaSE 软件工程师 认证考试试卷3
<div class="WordSection1"> <p align="center">认证考试试卷 <p align="center">? <p align="center">笔试 <p align="center">? <p align="center">? <p align="center">考试时间150分钟 <p align="center">? <p align="center">总分 100分 <p align="center">? <p align="center">姓??? 名 <p align="center">身份证号 <p align="center">准考证号___ <p align="center">? <p align="left">? <p align="left">? <p align="left">? <p align="center">考试结束后考卷必须收回,否则考试成绩无效 <p align="center">? <p align="center">尚学堂JavaSE软件工程师认证考试试卷 <p align="center">? 一、??? 填空题(共20个题目,总计20分)
? 二、??? 选择题(共25个题目,总计25分) ? |
<tr>
<td valign="top" width="53">
<p align="left">3)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">有以下方法的定义,请选择该方法的返回类型(?
D?? )。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left"><span style="text-decoration: underline">?????????
??method(byte
x,double y) {
<p align="left">???????? return? (short)x/y*2;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
byte
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">short
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
int
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
double
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">4)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">以下选项中添加到代码中横线处会出现错误的是(? BD? ?)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">public class Test {
<p align="left">???????? public float aMethod(float
a,float b) {
<p align="left">????????????????? return 0;???????
<p align="left">???????? }
<p align="left">?? <span style="text-decoration: underline">????????????????????????????????????
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">public float ?aMethod(float a,float b,float
c) {
<p align="left">????????????????? return 0;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">public float ?aMethod(float c,float d) {
<p align="left">????????????????? return 0;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">public int ?aMethod(int a,int b) {
<p align="left">???????? return 0;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">private int ?aMethod(float a,float b) {
<p align="left">???????? return 0;
<p align="left">}
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">5)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">阅读下列文件定入的Java代码,其执行结果是(??? D )。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">public class Test {
<p align="left">???????? public static void
main(String[] args) {
<p align="left">????????????????? char ch = 'c';
<p align="left">????????????????? switch (ch) {
<p align="left">????????????????? ??? case 'a':
<p align="left">????????????????????????? ??? System.out.print("a");???????? break;
<p align="left">????????????????? ??? case 'b':
<p align="left">????????????????????????? ??? System.out.print("ab");
<p align="left">????????????????? ??? case 'c':
<p align="left">????????????????????????? ??? System.out.print("c");
<p align="left">????????????????? ??? default:
<p align="left">????????????????????????? ??? System.out.print("d");
<p align="left">????????????????? }
<p align="left">???????? }
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">a
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">b
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">c
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">cd
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">6)
</td>
<td colspan="2" valign="top" width="661">
下面程序执行的结果是在屏幕上打印(??? B )次Java基础班。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">for(int?
i=1;i<=10;i++){
<p align="left">???????? if (i<5)
<p align="left">????????????????? continue;
<p align="left">???????? System.out.println("Java基础班");
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">5
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">6
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">7
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">8
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">7)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">以下四个选项中和下面代码功能相同的是(? B?? )。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">int i = 1;
<p align="left">int sum = 0;
<p align="left">while (i <= 100) {
<p align="left">???????? if (i % 2 == 0)
<p align="left">????????????????? sum = sum + i;
<p align="left">???????? i++;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
for (int x =1; x<=100;x++){ sum=sum+x;}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
for (int x =0; x<=100;x+=2){ sum=sum+x;}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
for (int x =1; x<=100;x+=2){ sum=sum+x;}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">上述全对
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">8)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">以下代码中错误的语句是(?
D? ?)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">public class Something{
<p align="left">???????? public static void
main(String[] args){
<p align="left">????????????????? final Other o=new
Other();
<p align="left">????????????????? new
Something().addOne(o);//1
<p align="left">???????? }
<p align="left">???????? public void addOne(
Other o){
<p align="left">????????????????? o.i++;//2
<p align="left">????????????????? o =? new Other();//3
<p align="left">???????? }
<p align="left">}
<p align="left">class Other{
<p align="left">???????? public int i;
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">1
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">2
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">3
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">没有错误
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">9)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">在Java中,以下程序编译运行后的输出结果为(? D?? )。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">public class Test {
<p align="left">??? int x,y;
<p align="left">??? Test(int x,int y) {
<p align="left">??????? this.x = x;
<p align="left">??????? this.y = y;
<p align="left">??? }
<p align="left">??? public static void
main(String[] args) {
<p align="left">??????? Test pt1,pt2;
<p align="left">??????? pt1 = new Test(3,3);
<p align="left">??????? pt2 = new Test(4,4);
<p align="left">??????? System.out.print(pt1.x
- pt2.x);
<p align="left">??? }
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">6
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">34
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">8
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">7
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">10)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">下列选项中关于Java中类方法的说法错误的是(? A? C )。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">在类方法+中可用this来调用本类的类方法
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">在类方法中调用本类的类方法时可直接调用
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">在类方法中只能调用本类中的类方法
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">在类方法中调用实例方法需要先创建对象
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">11)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">下列选项中关于Java中super关键字的说法正确的是(? AD? ?)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">super关键字是在子类对象内部指代其父类对象的引用
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">super关键字不仅可以指代子类的直接父类,还可以指代父类的父类
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">子类通过super关键字只能调用父类的方法,而不能调用父类的属性
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">子类通过super关键字可以调用父类的构造方法
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">12)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">编译运行如下Java代码,输出结果是( D? )。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">class Base {
<p align="left">???????? public void
method(){
<p align="left">????????????????? System.out.print ("Base
method");
<p align="left">???????? }
<p align="left">}
<p align="left">class Child extends
Base{???
<p align="left">???????? public void
methodB(){
<p align="left">????????????????? System.out.print ("Child
methodB");
<p align="left">???????? }
<p align="left">}
<p align="left">class Sample {
<p align="left">???????? public static void main(String[] args) {
<p align="left">????????????????? Base base= new Child();
<p align="left">????????????????? base.methodB();
<p align="left">???????? }
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">Base method
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">Child methodB
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">Base method
<p align="left">Child methodB
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">编译错误
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">13)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">在Java中,关于引用数据类型的类型转换说法正确的是(AB ????)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">引用数据类型的类型转换有向上转型和向下转型
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">向下转型,必须转换成其真实子类型,而不能随意转换
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">向下转型是自动进行的,也称隐式转换
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">向上转型可以使用instanceof操作符来判断转型的合法性
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">14)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">在Java接口中,下列选项中属于有效的方法声明是(? AC ??)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
public void aMethod( );
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">final
void aMethod( );
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">void aMethod(){ }
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
private void aMethod( );
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">15)
</td>
<td colspan="3" valign="top" width="661">
<p align="left">以下选项中关于匿名内部类的说法正确的是(?? BD? )。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
匿名内部类可以实现多个接口,或者继承一个父类
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">匿名内部类不能是抽象类,必须实现它的抽象父类或者接口里包含的所有抽象方法
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">匿名内部类没有类名,所以匿名内部类不等定义构造方法
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
匿名内部类可以直接访问外部类的所有局部变量
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">16)
</td>
<td colspan="3" valign="top" width="661">
<p align="left">阅读如下Java代码,在控制台输入"-1",执行结果是(B)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="3" valign="top" width="661">
<p align="left">public class Demo {
<p align="left">???????? public static void
main(String[] args) {
<p align="left">????????????????? Scanner input = new
Scanner(System.in);
<p align="left">????????????????? System.out.print("请输入数字:");
<p align="left">????????????????? try {
<p align="left">????????????????????????? int num =
input.nextInt();
<p align="left">????????????????????????? if (num <
1 || num > 4) {
<p align="left">?????????????????????????????????? throw
new Exception("必须在1-4之间!");
<p align="left">????????????????????????? }
<p align="left">????????????????? } catch
(InputMismatchException e) {
<p align="left">????????????????????????? System.out.println("InputMismatchException");
<p align="left">????????????????? } catch (Exception e)
{
<p align="left">????????????????????????? System.out.println(e.getMessage());
<p align="left">????????????????? }
<p align="left">???????? }
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="38">
<p align="left">?
</td>
<td colspan="2" valign="top" width="622">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="38">
<p align="left">A
</td>
<td colspan="2" valign="top" width="622">
<p align="left">输出:InputMismatchException
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="38">
<p align="left">B.
</td>
<td colspan="2" valign="top" width="622">
<p align="left">输出:必须在1-4之间!
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="38">
<p align="left">C.
</td>
<td colspan="2" valign="top" width="622">
<p align="left">什么也没输出
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="38">
<p align="left">D.
</td>
<td colspan="2" valign="top" width="622">
<p align="left">编译错误
</td>
</tr>
<tr>
<td width="53">?</td>
<td width="38">?</td>
<td width="12">?</td>
<td width="611">?</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">17)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">关于Integer类中的静态方法parseInt()方法说法正确的是( BD ???)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">将小数转换成整数
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">将数字格式的字符串转成整数
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">使用parseInt()方法可能抛出异常
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">将单个字符转成整数
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">18)
</td>
<td colspan="3" valign="top" width="661">
<p align="left">以下程序片段中可以正常编译的是(?? C ?)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td colspan="2" valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td colspan="2" valign="top" width="611">
<p align="left">String s =
"Gone with the wind";?
<p align="left">String k =
s+t;
<p align="left">String t =
"good";
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td colspan="2" valign="top" width="611">
<p align="left">String s =
"Gone with the wind";
<p align="left">String t;??????????
<p align="left">t =
s[3]+"one";
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td colspan="2" valign="top" width="611">
<p align="left">String s =
"Gone with the wind";
<p align="left">String
stanfard = s.toUpperCase();
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td colspan="2" valign="top" width="611">
<p align="left">String s =
"home directory";
<p align="left">String t = s
– "directory";
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">19)
</td>
<td colspan="3" valign="top" width="661">
<p align="left">以下代码的执行结果是( C ??)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="3" valign="top" width="661">
<p align="left">Set
s=new HashSet
<p align="left">s.add("abc");
<p align="left">s.add("abc");
<p align="left">s.add("abcd");
<p align="left">s.add("ABC");
<p align="left">System.out.println(s.size());
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="607">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="53">
<p align="left">A.
</td>
<td valign="top" width="607">
<p align="left">1
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="53">
<p align="left">B.
</td>
<td valign="top" width="607">
<p align="left">2
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="53">
<p align="left">C.
</td>
<td valign="top" width="607">
<p align="left">3
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="53">
<p align="left">D.
</td>
<td valign="top" width="607">
<p align="left">4
</td>
</tr>
<tr>
<td width="53">?</td>
<td width="50">?</td>
<td width="3">?</td>
<td width="607">?</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">20)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">File类中的isDirectory( )方法的作用是( BD ???)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
判断File对象封装的是否是文件
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">判断File对象封装的是否是目录
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">判断File对象中封装的是否是根目录
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
返回值类型是boolean
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">21)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">阅读下列文件定入的JAVA代码,共有( ?C?? )处错误。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td colspan="2" valign="top" width="661">
<p align="left">import java.io.*;
<p align="left">public class TestIO {
<p align="left">???????? public static void
main(String []args){
<p align="left">????????????????? String str ="文件写入练习";
<p align="left">????????????????? FileWriter fw = null;??????? //1
<p align="left">????????????????? try{
<p align="left">????????????????????????? fw = new
FileWriter("c:mytext.txt");?
//2
<p align="left">????????????????????????? fw.writerToEnd(str);?? //3
<p align="left">????????????????? }catch(IOException
e){?? //4
<p align="left">????????????????????????? e.printStackTrace();
<p align="left">????????????????? }finally{
<p align="left">????????????????????????? //此处省略关闭流
<p align="left">????????????????? }
<p align="left">???????? }
<p align="left">}
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A
</td>
<td valign="top" width="611">
<p align="left">0
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">1
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">2
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
<p align="left">3
</td>
</tr>
<table style="width: 714px" border="0" cellspacing="0" cellpadding="0"><tr>
<td valign="top" width="53">
<p align="left">22)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">以下选项中关于Java中线程控制方法的说法正确的是( AD?? ?)。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
join ( ) 的作用是阻塞指定线程等到另一个线程完成以后再继续执行
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">sleep (
) 的作用是让当前正在执行线程暂停,线程将转入就绪状态
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">yield ( ) 的作用是使线程停止运行一段时间,将处于阻塞状态
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
setDaemon( )的作用是将指定的线程设置成后台线程
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">23)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">Java中线程安全问题是通过关键字(? C? ?)解决的?。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
finally
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">wait( )
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">synchronized
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
notify( )
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">24)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">ServerSocket的监听方法accept( )方法的返回值类型是(?
A? ?)。(选择一项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
Socket
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">void
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">Object
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
DatagramSocket
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">25)
</td>
<td colspan="2" valign="top" width="661">
<p align="left">以下选项中关于Java中获取Class对象的方式正确的是( C D?? )。(选择二项)
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">?
</td>
<td valign="top" width="611">
<p align="left">?
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">A.
</td>
<td valign="top" width="611">
Class c1 = String.getClass( );
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">B.
</td>
<td valign="top" width="611">
<p align="left">String str = new String(“bjsxt”);
<p align="left">Class clazz = str.class;
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">C.
</td>
<td valign="top" width="611">
<p align="left">Class c1 =
Integer.TYPE;
</td>
</tr>
<tr>
<td valign="top" width="53">
<p align="left">?
</td>
<td valign="top" width="50">
<p align="left">D.
</td>
<td valign="top" width="611">
Class clazz = Class.forName("java.lang.Object");
</td>
</tr>
三、??? 判断题(共20个题目,总计10分,正确√,错误×)- 和C++相比,Java取消了指针,不再有多重继承,不需要手动回收垃圾。(??? T)
- Java具有一次编译,到处运行的特点,其含义是Java的源代码可以一次性编译成计算机的机器码,并在不同的平台上运行。( ?F ?)
- char 数据类型用来表示在ASCII编码表中的一个字符,在内存中占用1个字节空间,所以不能表示一个汉字。(? F? )
- 赋值和条件运算符是运算级别最低的两种运算符,两者都具有自右向左的结合性。( T?? )
- 多重循环是指一个循环体内又包含另一个完整的循环结构。外层循环变量变化一次,内层循环变量要从头到尾变化一遍。(? T? )
- 任何可用递归解决的问题也能使用循环解决,递归既花时间又耗内存,在要求高性能的情况下尽量避免使用递归。( T?? )
- 访问权限是private的变量,只能在本类和与本类同一个包中的其他类使用。(? ?F )
- 对于子类创建的一个对象,如果子类继承了父类的方法,未重写,则运行时调用子类的方法。( F? ?)
- ArithmeticException,ArrayIndexOutOfBoundsException,NullPointerException是运行时异常,而ClassNotFoundException,ClassCastException是Checked异常。(F? ??)
- 数组的长度是确定的,数组一旦被创建,它的大小就是不可以改变的。但是其元素类型可以是不同类型,允许出现混合类型。(? F? )
- 创建数组后,系统会给每个数组元素一个默认值,如double型元素的默认值是0.0。( T?? )
- JK1.5后提供了自动装箱和自动拆箱功能,从而可以实现基本数据类型和对应包装类之间的自动转换,简化了操作。( T?? )
- java.sql.Date类和java.util.Date类的关系是前者是后者的父类,其中前者没有提供无参数构造方法,而后者可以提供无参数构造方法来获取当前时间。( F ??)
- Collection是Java集合顶级接口,其中的元素无序,唯一。Java平台不提供这个接口任何直接的实现。( T ??)
- Iterator接口可以遍历任何Collection接口的实现类,可以从一个Collection中使用iterator( )方法来获取迭代器实例。迭代器取代了Java集合框架中的Enumeration。(T )
- 序列化是指将字节序列转换成Java对象,只有实现了Serializable接口的类的对象才可以被序列化。(F?? )
- 一个进程可以包括多个线程。两者的一个主要区别是:线程是资源分配的单位,而进程CPU调度和执行的单位。( F ??)
- 用new关键字建立一个线程对象后,该线程对象就处于新生状态。处于新生状态的线程有自己的内存空间,通过调用start进入就绪状态。( T ??)
- TCP协议是一种面向无连接的、可靠的、基于字节流的传输层通信协议,该协议占用系统资源多、效率较低。( ?F? )
- Java反射技术中,对于一个private修饰的成员变量,可以再设置setAccessible(true)后进行暴力访问。(? T ?)
四、??? 简答题(共5个题目,总计25分)
- 面向过程和面向对象的区别。(5分)
- 编程思路不同: 面向过程以实现功能的函数开发为主,而面向对象要首先抽象出类、属性及其方法,然后通过实例化类、执行方法来完成功能。(1分)
- 封装性:都具有封装性,但是面向过程是封装的是功能,而面向对象封装的是数据和功能。(1分)
- 面向对象具有继承性和多态性,而面向过程没有继承性和多态性,所以面向对象优势是明显。(1分)
- 面向对象耦合性低,更利于修改维护。(盖浇饭/蛋炒饭)。(1分)
- 面向过程更适合解决简单问题。面向对象更适合解决复杂问题。(1分)
- Error和Exception的区别。(5分)
- Error类,表示仅靠程序本身无法恢复的严重错误,比如说内存溢出、动态链接异常、虚拟机错误。(1分)应用程序不应该抛出这种类型的对象。假如出现这种错误,除了尽力使程序安全退出外,在其他方面是无能为力的。(1分)
- Exception类,由Java应用程序抛出和处理的非严重错误,比如所需文件没有找到、零作除数,数组下标越界等。(1分)它的各种不同子类分别对应不同类型异常。可分为两类:Checked异常和Runtime异常。(1分)所以在进行程序设计时,应该更关注Exception类。(1分)
- 列举常用的字节输入流和输出流并说明其特点,至少5对。(5分)
- FileInputStream和FileOutputStream 节点流 以文件为数据源和目的地(1分)
- BufferedInputStream和BufferedOutputStream 处理流 提供了缓冲功能,提高读写效率(1分)
- DataInputStream和DataOutputStream 处理流 提供了方便读写基本数据类型和String数据的方法(1分)
- ObjectInputStream和ObjectOutputStream 处理流 不仅提供了方便读写基本数据类型和String数据的方法,也提供了读写引用类型数据的方法(1分)
- ByteArrayInputStream和ByteArrayOutputStream 节点流 以字节数组为数据源和目的地(1分)
- 创建线程的两种方式分别是什么?各有什么优缺点。(5分)
- 方式1:继承java.lang.Thread类,并覆盖run() 方法。(1分)
- 方式2:实现java.lang.Runnable接口,并实现run()方法。(1分)
- 简述基于UDP的Socket编程的主要步骤。
提示:分别说明服务器端和客户端的编程步骤。(5分)
服务器端(server):
1)?????? 构造DatagramSocket实例。(0.5分)
2)?????? 创建数据包DatagramPacket,存取发送和接收的数据、IP和端口。(0.5分)
3)?????? 通过DatagramSocket实例的receive方法接收客户端数据。(0.5分)
4)?????? 通过DatagramSocket的send方法向客户端发出反馈信息。(0.5分)
5)?????? 关闭DatagramSocket。(0.5分)
客户端(client):
1)?????? 构造DatagramSocket实例。(0.5分)
2)?????? 创建数据包DatagramPacket,存取发送和接收的数据、IP和端口。(0.5分)
3)?????? 通过DatagramSocket实例的receive方法接收客户端数据。(0.5分)
4)?????? 通过DatagramSocket的send方法向客户端发出反馈信息. (0.5分)
关闭DatagramSocket。(0.5