JavaSE 软件工程师 认证考试试卷2

<div class="WordSection1">
<p align="center">JavaSE 软件工程师


<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分)

 

  1. 使用Java开发应用程序包括编写源程序,编译源程序,解释并运行三个步骤,其中Java源程序编译后生成的字节码文件的扩展名为
  2. 在Java中,浮点型变量的类型有float和double两种,对于float型变量,内存分配4个字节,对于double型变量,内存分配个字节。
  3. 在Java JDK1.7之前,switch只能支持byte、short、char、int或者其对应的封装类以及Enum类型。在JDK1.7中又加入了类型。
  4. 在循环结构中,如果想跳出循环体,结束整个循环结构可以使用语句。
  5. 类是组成Java程序的基本要素,类体有两部分构成:一部分是变量的定义,另一部分是的定义。
  6. 是指在一个类中可以有多个方法具有相同的名字,但这些方法的参数类型、个数、顺序必须不同,与方法的返回值和访问修饰符无关。
  7. 关键字作为Java源文件的第一条非注释性语句,指明该源文件定义的类所有的包。
  8. 在Java中如果一个类中没有显示使用extends关键字标明这个类继承自哪个类,那么这个类就默认是的子类。
  9. 声明数组仅仅是给出了数组的名字和元素的数据类型,要想真正地使用数组还必须使用关键字在堆内存中分配内存空间。
  10. 在Java中有二维数组int [ ] [ ] array={{1,2,3},{4,5}} ,可以使用得到二维数组中第二维中第一个数组的长度。
  11. 在Java中使用java.lang包中的StringBuffer类来创建一个字符串对象,它代表一个字符序列可变的字符串,可以通过相应的方法改变这个字符串对象的字符序列。
  12. 在Java中每个Java基本类型在java.lang包中都在一个相应的包装类,把基本类型数据转换为对象,其中包装类Integer是java.lang.Number的直接子类。
  13. 对于一个已经不被任何引用变量引用的对象,当垃圾回收器准备回收该对象所占用的内存时,将自动调用该对象的方法。
  14. Math类提供了许多数学运算的静态方法,其中 方法是用来生成随机数的方法,其返回类型是double类型。
  15. 在Java中对于程序可能出现的检查时异常,要么用try…catch语句捕获并处理它,要么使用语句抛出它,由上一级调用者来处理。
  16. read方法从输入流中顺序读取源中的单个字节数据,该方法返回字节值(0-255之间的一个整数),如果到达源的末尾,该方法返回
  17. 在Java中编写实现多线程应用有两种途径:一种是继承Thread类创建线程,另一种是实现接口创建线程。
  18. 结构是一种由多个节点组成的数据结构,并且每个节点包含有数据以及指向下一个节点的引用。
  19. 在Java Socket网络编程中,开发基于TCP协议的服务器端程序使用的套接字是
  20. 在Java中使用SAX解析XML文档主要有两个部分,一个是SAX解析器,一个是

 

二、    选择题(共25个题目,总计25分)

 

1)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">Java中,源文件Test.java中包含如下代码,则程序编译运行的结果是(  B  )。(选择一项)

</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">                  system.out.println("Hello!");


<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">

输出:Hello!

</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">编译出错,提示“无法解析system”

</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">

运行正常,但没有输出任何内容

</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">

运行时出现异常

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">

<tr>
<td valign="top" width="53">
<p align="left">2)

</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">System.out.println(1+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">char i =2+'2';


<p align="left">System.out.println(i);

</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">String s="on"+'one';

</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">

int b=255.0;

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">3)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">分析如下Java代码,编译运行的输出结果是(
A  
)。(选择一项)

</td>

</tr>
<tr>
<td valign="top" width="53">
<p align="left"> 

</td>
<td colspan="2" valign="top" width="661">
<p align="left">public static void main(String[ ] args) {


<p align="left">                  boolean
a=true;


<p align="left">                  boolean
b=false;


<p align="left">                  if
(!(a&&b)) {


<p align="left">                          System.out.print("!(a&&b)");


<p align="left">                  }else
if (!(a||b)) {


<p align="left">                          System.out.println("!(a||b)");


<p align="left">                  }else
{


<p align="left">                          System.out.println("ab");


<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">

!(a&&b)

</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">!(a||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">

ab

</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">

!(a||b)ab

</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">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 static void main(String[ ] args) {


<p align="left">                  for(int
i=0;i<10;i++){


<p align="left">                          if
(i%2!=0)


<p align="left">                                   return;


<p align="left">                          System.out.print(i);


<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">

13578

</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">02468

</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">

0123456789

</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">

0

</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的程序类中如下方法定义正确的是(
  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">public int ufTest(int num){


<p align="left">                  int sum=num+100;


<p align="left">                  return
sum;

}

</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 String ufTest(int num){


<p align="left">                  int
sum=num+100;


<p align="left">                  return
sum;


<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 void ufTest(int num){


<p align="left">                  int
sum=num+100;


<p align="left">                  return
sum;

}

</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">public float ufTest(int num){


<p align="left">                  int
sum=num+100;


<p align="left">                  return
sum;

}

</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">
<p align="left">分析下面的Java源程序,编译后的运行结果是(
 B  
)。(选择一项)

</td>

</tr>
<tr>
<td valign="top" width="53">
<p align="left"> 

</td>
<td colspan="2" valign="top" width="661">
<p align="left">import java.util.*;


<p align="left">publicclass Test {


<p align="left">         public
staticvoid main(String[ ] args) {


<p align="left">                  int
[ ] numbers=newint[ ]{1,3};


<p align="left">                  System.out.println(Arrays.binarySearch(numbers,2));


<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">

输出: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">

输出: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">

输出:3

</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">分析如下Java程序的代码所示,则编译运行后的输出结果是( C   )。(选择一项)

</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
count=9;                                              

public void count1(){

out.println("count1="+count);

public void count2(){

out.println("count2="+count);

public static void main(String[ ] args) {

new Test();

</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">

count1=9;

count2=9;

</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">count1=10;


<p align="left">count2=9;

</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">

count1=10;

count2=10;

</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">

count1=9;

count2=10;

</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">Java中,以下定义数组的语句正确的是(
CD   
)。(选择两项)

</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">

int  t[10]=new int[ ];

</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">char
[ ]a=”hello”;

</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">

String [ ] s=new String [10];

</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[ ] d [ ]=new double [4][ ];

</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 static void main(String[ ] args) {


<p align="left">                  String
str=null;


<p align="left">                  str.concat("abc");


<p align="left">                  str.concat("def");


<p align="left">                  System.out.println(str);


<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">

null

</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">abcdef

</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">

编译错误

</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">

运行时出现NullPointerException异常

</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代码,编译运行后,输出结果是(   C )。(选择一项)

</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
staticvoid main(String[ ] args) {


<p align="left">                  StringBuffer
a=new StringBuffer("A");


<p align="left">                  StringBuffer
b=new StringBuffer("B");


<p align="left">                  operate(a,b);


<p align="left">                  System.out.println(a+","+b);


<p align="left">         }


<p align="left">         static
void operate(StringBuffer x,StringBuffer y){


<p align="left">                  x=new
StringBuffer("BBB");


<p align="left">                  y=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">

BBB,B

</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">BBB,BBB

</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">

A,B

</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">

A,A

</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程序,Test类中的四个输出语句输出结果依次是(  C  )。(选择一项)

</td>

</tr>
<tr>
<td valign="top" width="53">
<p align="left"> 

</td>
<td colspan="2" valign="top" width="661">
<p align="left">class Person {


<p align="left">         String
name="person";


<p align="left">         public
void shout(){


<p align="left">                  System.out.println(name);


<p align="left">         }


<p align="left">}


<p align="left">class Student extends Person{


<p align="left">         String
name="student";


<p align="left">         String
school="school";


<p align="left">}


<p align="left">publicclass Test {


<p align="left">         public
staticvoid main(String[ ] args) {


<p align="left">                  Person
p=new Student();


<p align="left">                  System.out.println(p
instanceof Student);


<p align="left">                  System.out.println(p
instanceof Person);


<p align="left">                  System.out.println(p
instanceof Object);;


<p align="left">                  System.out.println(p
instanceof System);


<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">

true,false,true,false

</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">false,false

</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">

true,编译错误

</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">

true,编译错误

</td>

</tr>
<tr>
<td valign="top" width="53">
<p align="left"> 


<p align="left">12)

</td>
<td colspan="2" valign="top" width="661">
<p align="left"> 


<p align="left">Java中,LinkedList类与ArrayList类同属于集合框架类,下列(
 CD 
)选项中是LinkedList类有而ArrayList类没有的方法。(选择两项)

</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">

add(Object o)

</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">add(int
index,Object o)

</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">

getFirst()

</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">

removeLast()

</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代码,输出的运行结果是(  A  )。(选择一项)

</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
staticvoid main(String[ ] args) {


<p align="left">                  List
list=new ArrayList();


<p align="left">                  list.add("str1");


<p align="left">                  list.add(2,"str2");


<p align="left">                  String
s=list.get(1);


<p align="left">                  System.out.println(s);


<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">

运行时出现异常

</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">正确运行,输出str1

</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">

正确运行,输出str2

</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">

编译时出现异常

</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中关于静态方法,以下说法中正确的是( 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">

静态方法中不能直接调用非静态方法

</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">

静态方法可以用类名直接调用

</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">

静态方法里可以使用this

</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="2" valign="top" width="661">
<p align="left">如下Java代码运行的结果是(
 B  
)。(选择一项)

</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">         final
int age;


<p align="left">         public
Test(){


<p align="left">                  age=10;


<p align="left">         }


<p align="left">         public
staticvoid main(String[ ] args) {


<p align="left">                  System.out.println(new
Test().age);


<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">

输出: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">输出:10

</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">

输出:null

</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">

运行时出现异常

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">16)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">Java中关于abstract关键字,以下说法正确的是( 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">

abstract类中可以没有抽象方法

</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">abstract类的子类也可以是抽象类

</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">

abstract方法可以有方法体

</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">

abstract类可以创建对象

</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">Java中,下列关于读写文件的描述错误的是(
B   
)。(选择一项)

</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">

Reader类的read()方法用来从源中读取一个字符的数据

</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">Reader类的read(int
n )方法用来从源中读取一个字符的数据

</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">

Writer类的write(int n)方法用来向输出流写入单个字符

</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">

Writer类的write(String str)方法用来向输出流写入一个字符串

</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="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">import java.io.FileWriter;


<p align="left">import java.io.IOException;


<p align="left">publicclass Test {


<p align="left">         public
staticvoid main(String[ ] args) {


<p align="left">                  String
str = "Hello World";


<p align="left">                  FileWriter
fw = null;


<p align="left">                  try
{


<p align="left">                          fw
= new FileWriter("c:\hello.txt"); // 1


<p align="left">                          fw.write(str);
                    // 2


<p align="left">                  }
catch (IOException e) {


<p align="left">                          e.printStackTrace();
               // 3


<p align="left">                  }
finally {


<p align="left">                          fw.close();
                       // 4


<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">

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">

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">

4

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">19)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">JavaIO操作中,(   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">

void release()

</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
close()

</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">

void remove()

</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">

void flush()

</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">下列关于线程的优先级说法中,正确的是(
BC 
)。(选择两项)

</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">

线程的优先级是不能改变的

</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">

在创建线程后的任何时候都可以重新设置

</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">

线程的优先级的范围在1-100之间

</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线程的说法正确的是(  B  )。(选择一项)

</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">

每一个Java线程可以看成由代码、一个真实的CPU以及数据三部分组成

</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">创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类的问题

</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">

Thread类属于java.util程序包

</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">

使用new Thread(new X()).run();方法启动一个线程

</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网络编程中,使用客户端套接字Socket创建对象时,需要指定( 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">

服务器主机名称和端口

</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">

服务器名称和文件

</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">

服务器地址和文件

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">23)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">Java的反射中关于代理说法正确的是( 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">

动态代理类与静态代理类一样,必须由开发人员编写源代码,并进行编译

</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">

动态代理是public、final和abstract类型的

</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">

java.lang.reflect包中的Proxy类提供了创建动态代理类的方法

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">24)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">在编写XML 文件时,下列关于属性的声明说法正确的是(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">

标记中可以使用多个属性

</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">

属性是不区分大小写的

</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">

属性值必须用引号引上

</td>

</tr>

<table style="width: 714px" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" width="53">
<p align="left">25)

</td>
<td colspan="2" valign="top" width="661">
<p align="left">在使用UDP套接字通信时,常用(  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">

String

</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">DatagramSocket

</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">

MulticastSocket

</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">

DatagramPacket

</td>

</tr>

三、    判断题(共20个题目,总计10分,正确,错误×

 

  1. Java语言是一种面向对象的语言,具有较好的安全性和可移植性及与平台无关等特性。(  T )
  2. 假设有一个Java源程序文件,它只定义了一个具有public属性的类Hello,那么编译该文件的命令是“javac Hello”。(  F  )
  3. 在编译Java源程序时,计算机根本不会去识别各个变量名的具体含义,因此命名规范对编写Java程序而言不是必要的,而且有可能会降低编写Java源程序的效率。(  F  )
  4. 在Java中任何一个子类的构造方法都必须调用其父类的构造方法(包括隐式调用),并且调用父类的构造方法的语句必须是子类构造方法的第一条语句。(  T  )
  5. Java语言为所有的Java程序自动导入包“java.lang”,因此Java程序可以直接用“java.lang”中的类和接口。(  T  )
  6. Java中的类不允许多重继承,但接口支持多重继承。(   T )
  7. 父类Person中定义了一个private void show()的方法,那么子类要重写这个方法时,方法的访问修饰符可以是默认的,protected或public。(  F  )
  8. 抽象方法不能含有方法体,并且必须定义在抽象类中。(  F  )
  9. 构造方法用于创建对象,一般不允许有任何返回值,因此需要在构造方法返回类型处标注为void。( F   )
  10. 在Java中对象可以赋值,只要使用赋值运算符即可,相当于生成了一个各属性与赋值对象相同的新对象。( F   )
  11. Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。(  T  )
  12. 在Java异常处理中可以使用多个catch子句,此时应将异常类的父类Exception放到第一个catch子中。( F   )
  13. 与未加访问控制符的缺省情况相比,public和protected修饰符扩大了类及其属性和方法的被访问范围,private修饰符则缩小了这种范围。(  T  )
  14. 泛型是JavaSE1.7的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。Java语言引入泛型的好处是安全简单。(  F  )
  15. List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引来访问List中的无素,这类似于Java的数组。(  T  )
  16. 在使用File类中的delete()方法时,删除时可能文件不存在,所以我们最好先判断一下是否存在,不然会出现NullPointerException异常。( F   )
  17. 当一个线程进入一个对象的一个synchronized方法后,其它线程不可以再进入该对象的其它方法执行。( T   )
  18. TCP/IP传输控制协议是Internet的主要协议,定义了计算机和外设进行通信的规则。TCP/IP网络参考模型包括七个层次:应用层、会话层、表示层、传输层、网络层、链路层和物理层。( F   )
  19. Java反射机制是指:Java程序可以加载一个运行时才得知名称的类,获悉其完整结构信息(但不包括methods定义),并生成其对象实体、或对其fields设值、或调用其methods。(   T )
  20. XML在不同的语言里解析方式都是一样的,只不过实现的语法不同而已。基本的解析方式有两种,一种叫SAX,另一种叫DOM。SAX是基于事件流的解析,DOM是基于XML文档树结构的解析。(T    )

四、    简答题(共5个题目,总计25分)

  1. Java异常处理中,关键字try、catch、finally、throw、throws分别代表什么含义?(5分)

    答:   try:用来指定一块预防所有“异常”的程序。(1分)

    catch:子右紧跟在try块后面,用于指定你想要捕捉的“异常”的类型。(1分)

    finally:为确保一段代码不管发生什么“异常”都被执行一段代码。(1分)

    throw:语句用来明确地抛出一个“异常”,在方法体中。(1分)

    throws:用来标明一个方法可以抛出的各种“异常”,写在方法名的后面。(1分)

  1. 请你简述sleep( )和wait( )有什么区别?(5分)

    sleep是线程类(Thread)的方法;(0.5分)作用是导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复;(1分)  调用sleep()不会释放对象锁。(1分)

    wait是Object类的方法;(0.5分)对此对象调用wait方法导致本线程放弃对象锁,进入等 待此对象的等待锁定池。(1分)只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池,准备获得对象锁进行运行状态。(1分)

  1. 请你简述HashMap和Hashtable的区别?(5分)

    答:共同点:

    1)       二者都实现了Map接口,是将惟一键映射到特定的值上。(1分)

    2)       底层都采用哈希表作为存储结构,查询速度快,在很多情况下可互用。(1分)

    主要区别:

    1)       Hashtable继承Dictionary类,HashMap是Java1.2引进的Map实现。(1分)

    2)       Hashtable的线程安全的,而HashMap不是。在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap就必须为之提供外同步。(1分)

    3)       HashMap没有排序,允许一个null键和多个null值,而Hashtable不允许。(0.5分)

    4)       HashMap把Hashtable的contains( )去掉了,改成containsValue和containsKey,因为contains方法容易让人引起误解。(0.5分)

  1. 什么是设计模式?设计模式的作用?(5分)

    设计模式是一套被反复使用的、多数人知晓、经过分类编目的优秀代码设计经验的总结。每个设计模式都是特定环境下特定问题的处理方法。(1分)

    设计模式主要作用如下:

    1)       重用设计和代码。重用设计比重用代码更有意义,自动带来代码重用。(1分)

    2)       提高扩展性。大量使用面向接口编程,预留扩展插槽,新的功能或特性很容易加入到系统中来。(1分)

    3)       提高灵活性。通过组合提高灵活性,可以允许代码修改平稳发生,对一处的修改不会波及到很多其他模块。(1分)

    4)       提高开发效率。正确使用设计模式,可以节省大量的时间。(1分)

  1. TCP/IP协议栈中,TCP协议和UDP协议的联系和区别?(5分)

    答:联系:

    TCP和UDP是TCP/IP协议栈中传输层的两个协议,它们使用网络层功能把数据包发送到目的地,从而为应用层提供网络服务。(1分)

    区别:

    1. TCP是面向连接的传输。UDP是无连接的传输。(1分)

    2. TCP保证数据按照发送顺序到达,UDP无法保证。(1分)

    4. TCP是可靠性传输,而UDP则是不可靠传输。(1分)

    5. UDP因为少了很多控制信息,所以传输速度比TCP速度快。(0.5分)

    6. TCP适合用于传输大量数据,UDP适合用于传输小量数据。(0.5分)

    比喻: TCP的server和client之间通信就好比两个人打电话。UDP的server和client之间的通信就像两个人发电报或者发短信。

<div class="cnblogs_code">

  
 1.    编写两个线程,一个线程打印1-52的整数,另一个线程打印字母A-  (1 (2)    在打印类Printer中编写打印数字的方法print( (3)    在打印类Printer中编写打印字母的方法print( (4 (5 (6 
   
       
       index = 1     
        print(         (index%3==0                           }                  index++          print(         (index%3!=0                           }                  index++      NumberPrinter  
    
      
              .p =                         ( i=1;i<53;i++     
   LetterPrinter  
    
      
              .p =                        ( j='A';j<='Z';j++    
                   
         Printer p =          
         Thread t1 =          
         Thread t2 =          
     
 
 2 
    main(String[] args)          BufferedReader br =  BufferedReader(                  FileInputStream("D:\\exam.txt"         List list =  ArrayList<>         String num=         ((num=br.readLine())!=                      
  3  (1)    定义一个学生类Student,其中包含姓名(String)、年龄()、成绩( (2 (3 (4)    编写测试类TestStudent,从键盘录入学生的信息格式为(姓名:年龄:成绩)一次性录入使用“:”分隔,举例(mary:20:90 (5 (6 (7 
                    
       
      Student_3(String name, age,         .name =         .age =         .grade =  
                "Student_3 ["+ name +" "+ age+" "+ grade +"]"      
     
           main(String[] args)          Scanner sc =          System.out.println("录入学生的信息格式为(姓名:年龄:成绩):"         String info =         String[] s = info.split(":"          age = Integer.parseInt(s[1          grade =Float.parseFloat(s[2         Class clazz = Class.forName("复习题二201511.Student_3"         Constructor con = clazz.getConstructor(String.,.,.         Object obj = con.newInstance(s[0         Method m = clazz.getMethod("toString"         Object invoke =          
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


@ 注解能被用来为程序元素( 类、 方法、 成员变量等) 设置元数据。 值得指出的是, 注解不影响程序代码的执行, 无论增加、 删除注解, 代码都始终如一地执行。 如果希望让程序中的注解在运行时起一定
@ 1、线性表的概念 线性表是最常见也是最简单的一种数据结构。简言之, 线性表是n个数据元素的有限序列。 其一般描述为: A={a1,a2,……an) 一个数据元素通常包含多个数据项, 此时每个数据元
简介 ArrayList是开发中使用比较多的集合,它不是线程安全的,CopyOnWriteArrayList就是线程安全版本的ArrayList。CopyOnWriteArrayList同样是通过数组
在 Java String类源码阅读笔记 里学习了String类的源码,StringBuilder、StringBuffer是经常拿来和String类做对比的两个类,可谓是“爱恨纠缠” ,这里我们继续
话不多说,先上图。 1、基本概念 欲说线程,必先说进程。 进程:进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程:线程是进程的一个执行路径,一个进程中至少有一个线程,进
@ 网络基础 计算机网络是指两台或更多的计算机组成的网络,在同一个网络中,任意两台计算机都可以直接通信,因为所有计算机都需要遵循同一种网络协议。 那什么是互联网呢?互联网是网络的网络(internet
JVM是面试中必问的部分,本文通过思维导图以面向面试的角度整理JVM中不可不知的知识。 先上图: 1、JVM基本概念 1.1、JVM是什么 JVM 的全称是 「Java Virtual Machine
@ 本文基于jdk1.8 HashMap采用 key/value 存储结构,每个key对应唯一的value。 在jdk1.7之前,HashMap 的内部存储结构是数组+链表。 在jdk1.8中 Has
@ Eclipse是很多Java开发者的第一个开发工具,尽管开源的Eclipse在一后起之秀的对比下,显得有些颓势,但是,Eclipse有着丰富的插件支持。选择合适的插件,Eclipse表示:老夫也能
@ 准备 LinkedList是基于双向链表数据结构实现的Java集合(jdk1.8以前基于双向循环链表),在阅读源码之前,有必要简单了解一下链表。 先了解一下链表的概念:链表是由一系列非连续的节点组
@ 写博客哪有刷逼乎有意思 1 写博客哪有刷逼乎有意思 2 写博客哪有刷逼乎有意思 3 类的加载、 连接和初始化 系统可能在第一次使用某个类时加载该类, 也可能采用预加载机制来加载某个类。 JVM 和
树结构是一类重要的非线性数据结构。直观来看,树是以分支关系定义的层次结构。树结构在客观世界广泛存在,如人类社会的族谱和各种社会组织机构都可用树来形象表示。 树在计算机领域中也得到广泛应用,尤以二叉树最
@ 本文基于jdk1.8 String类可谓是我们开发中使用最多的一个类了。对于它的了解,仅仅限于API的了解是不够的,必须对它的源码进行一定的学习。 一、前置 String类是Java中非常特别的一
随便打开一个招聘网站,看看对高级Java工程师的技能要求。 抛开其它的经验能力等等,单纯从技术,或者说知识上来讲,可以发现一些共通的地方。 Java基础 计算机基础 数据库,SQL/NoSQL 常用开
@ JDBC指Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。 1、JDBC典型用法 1.1、JDBC 4.2 常用接口和类简介
简介 ArrayList是基于数组实现的一种列表。 ArrayList继承体系如下: 图一:ArrayList继承体系 ArrayList实现了List, RandomAccess, Cloneabl
@ Java 的 IO 通过 java.io 包下的类和接口来支持, 在 java.io 包下主要包括输入、 输出两种 10 流, 每种输入、 输出流又可分为字节流和字符流两大类。 其中字节流以字节为
@ 使用断言 断言(Assertion)是一种调试程序的方式。在Java中,使用assert关键字来实现断言。 断言的概念 假设确信某个属性符合要求, 并且代码的执行依赖于这个属性。例如, 需要计算:
@ Java 程序在不同操作系统上运行时,可能需要取得平台相关的属性,或者调用平台命令来完成特定功能。 Java 提供了 System 类和 Runtime 类来与程序的运行平台进行交互。 Syste
@ Java 提供了一个操作 Set 、 List 和 Map等集合的类:Collections , 该工具类里提供了大量方法对集合元素进行排序、 查询和修改等操作,还提供了将集合对象设置为不可变、对