115个Java笔试题和答案

饶小明 分享 时间: 收藏本文

【简介】感谢网友“饶小明”参与投稿,以下是小编精心整理的115个Java笔试题和答案(共9篇),供大家参考借鉴,希望可以帮助到有需要的朋友。

篇1:115个Java笔试题和答案

115个Java笔试题和答案

面向对象编程(OOP)

Java是一个支持并发、基于类和面向对象的计算机编程语言,下面列出了面向对象软件开发的优点:

代码开发模块化,更易维护和修改。

代码复用。

增强代码的可靠性和灵活性。

增加代码的可理解性。

面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象。下面的章节我们会逐个分析这些特性。

封装

封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Java当中,有3种修饰符:public,private和protected。每一种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限。

下面列出了使用封装的一些好处:

通过隐藏对象的属性来保护对象内部的状态。

提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展。

禁止对象之间的不良交互提高模块化。

参考这个文档获取更多关于封装的细节和示例。

多态

多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力,

一个多态类型上的操作可以应用到其他类型的值上面。

继承

继承给对象提供了从基类获取字段和方法的能力。继承提供了代码的重用行,也可以在不修改类的'情况下给现存的类添加新特性。

抽象

抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来创建类。Java支持创建只暴漏接口而不包含方法实现的抽象的类。这种抽象技术的主要目的是把类的行为和实现细节分离开。

抽象和封装的不同点

抽象和封装是互补的概念。一方面,抽象关注对象的行为。另一方面,封装关注对象行为的细节。一般是通过隐藏对象内部状态信息做到封装,因此,封装可以看成是用来提供抽象的一种策略。

常见的Java问题

1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?

Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。

Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。

篇2:java笔试题及其答案

1、在java中如果声明一个类为final,表示什么意思?

答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。

2、父类的构造方法是否可以被子类覆盖(重写)?

答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。

3、请讲述String 和StringBuffer的区别。

答:String 类所定义的对象是用于存放“长度固定”的字符串。

StringBuffer类所定义的对象是用于存放“长度可变动”的字符串。

4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢?

答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。

5、结合Java视频Lesson5(多线程),分析sleep和wait()方法的区别。

答: Sleeping睡眠的意思 : sleep() 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。

waiting等待的意思: 如果调用了 wait() 方法,线程将处于等待状态。用于在两个或多个线程并发运行时。

6、谈谈你对抽象类和接口的理解。

答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。他使用extends来继承。

接口:一个接口允许一个类从几个接口继承而来,Java 程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是interface来实现。

[java笔试题及其答案]

篇3:经典java笔试题及答案

1、anonymous inner class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)答:匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现

2、作用域public,private,protected,以及不写时的区别答:区别如下:作用域 当前类 同一package 子孙类 其他packagepublic √ √ √ √protected √ √ √ ×friendly √ √ × ×private √ × × ×不写时默认为friendly

3、static nested class 和 inner class的不同答:nested class (一般是c++的说法),inner class (一般是java的说法)。java内部类与c++嵌套类最大的不同就在于是否有指向外部的引用上。注: 静态内部类(inner class)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象

4、&和&&的区别 答:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)

5、collection 和 collections的区别 答:collection是集合类的上级接口,继承与他的接口主要有set 和list.collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作

6、什么时候用assert答:assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的

7、string s = new string(“xyz”);创建了几个string object 答:两个,一个字符对象,一个字符对象引用对象

8、math.round(11.5)等於多少? math.round(-11.5)等於多少 答: math.round(11.5)==12;math.round(-11.5)==-11;round方法返回与参数最接近的长整数,参数加1/2后求其floor

9、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错答:short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)short s1 = 1; s1 += 1;(可以正确编译)

10、java有没有goto答:java中的保留字,现在没有在java中使用

11、数组有没有length()这个方法? string有没有length()这个方法答:数组没有length()这个方法,有length的属性。string有有length()这个方法

12、overload和override的区别。overloaded的方法是否可以改变返回值的类型答:方法的重写overriding和重载overloading是java多态性的不同表现。重写overriding是父类与子类之间多态性的一种表现,重载overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(overloading)。overloaded的方法是可以改变返回值的类型

13、set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别答:set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个set是否相等 equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值

14、给我一个你最常见到的runtime exception 答:常见的运行时异常有如下这些arithmeticexception, arraystoreexception, bufferoverflowexception, bufferunderflowexception, cannotredoexception, cannotundoexception, classcastexception, cmmexception, concurrentmodificationexception, domexception, emptystackexception, illegalargumentexception, illegalmonitorstateexception, illegalpathstateexception, illegalstateexception, imagingopexception, indexoutofboundsexception, missingresourceexception, negativearraysizeexception, nosuchelementexception, nullpointerexception, profiledataexception, providerexception, rasterformatexception, securityexception, systemexception, undeclaredthrowableexception, unmodifiablesetexception, unsupportedoperationexception

15、abstract class和interface有什么区别 答:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口

16、error和exception有什么区别答:error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况

17、list, set, map是否继承自collection接口 答: list,set是,map不是

篇4:java笔试题以及答案详解

java笔试题以及答案详解

一、单项选择题

1.Java是从语言改进重新设计,

A.Ada B.C++ C.Pasacal D.BASIC

答案:B

2.下列语句哪一个正确()

A. Java程序经编译后会产生machine code

B. Java程序经编译后会产生byte code

C. Java程序经编译后会产生DLL

D.以上都不正确

答案:B

3.下列说法正确的有()

A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名

C. constructor在一个对象被new时执行

D.一个class只能定义一个constructor

答 案:C

详解: 见下面代码, 很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。

package net.study;

public class TestConStructor

{

public TestConStructor()

{

System.out.println(“constructor”);

}

public void TestConStructor()

{

System.out.println(“not constructor”);

}

public static void main(String[] args)

{

TestConStructor testConStructor = new TestConStructor();

System.out.println(“main”);

testConStructor.TestConStructor();

}

}

4.提 供Java存取数据库能力的包是()

A.java.sql B.java.awt C.java.lang D.java.swing

答案:A

5.下 列运算符合法的是()

A.&& B. C.if D.:=

答案:A

详解:

java 中没有 := 这种运算符, if else不算运算符

6.执行如下程序代码

a=0;c=0;

do{

--c;

a=a-1;

}while(a>0);

后,C的值是()

A.0 B.1 C.-1 D.死循环

答 案:C

详解:

Do while 中的语句是至少要执行一次的。 执行顺序为:do 中的语句,然后价差while条件,如果为false,则终止;如果为true,则继续执行Do中的语句,然后再检查while条件,如此循环。

7.下列哪一种叙述是正确的()

A. abstract修饰符可修饰字段、方法和类

B.抽 象方法的body部分必须用一对大括号{ }包住

C.声明抽象方法,大括号可有可无

D.声明抽象方法不可写出大括号

答案:D

详解:

abstract不能修饰字段。既然是抽象方法,当然是没有实现的方法,根本就没有body部分。

8.下列语句正确的是()

A.形式参数可被视为local variable

B.形式 参数可被字段修饰符修饰

C.形式参数为方法被调用时,真正被传递的参数

D.形式参数不可以是对象

答案:A

详解:

形参可以看成方法中的局部变量。 传递的是对象引用

9.下列哪种说法是正确的()

A.实例方法可直接调用超类的实例方法

B.实例方法可直接调用超类的类方法

C.实例方法可直接调用其他类的实例方法

D.实例方法可直接调用本类的 类方法

答案:D

二、多项选择题

1.Java程序的种类有()

A.类 (Class) B.Applet C.Application D.Servlet

2.下列说法正 确的有()

A. 环境变量可在编译source code时指定

B.在编译程序时,所能指定的环境变量不包括 class path

C. javac一次可同时编译数个Java源文件

D. javac.exe能指定编译结果要置于哪个目录(directory)

答案:BCD

3.下列标识符不合法的有 ()

A.new B.$Usdollars C.1234 D.car.taxi

答案:ACD

解释:

java 变量命名规则:1. 大小写有别,例如 a 和 A是两个变量 2. 长度任意 3. 可以任何字母开始,另外还可以以“_”和“$”开始,一般“$”是很多代码生成器用的,人工写出来的代码不鼓励“_” “$” 4. 除了第一个字符,后面可以跟任何字母,数字,_和$

new 是关键字不行,

不能以数字开头。 不用有“.”这种符号

4.下列说法错误的.有()

A.数组是一种对象

B.数组属于一种原生类

C. int number=[]={31,23,33,43,35,63}

D.数组的大 小可以任意改变

答案:BCD

解释:

数组不是原生类:int double boolean float byte short long char ,初始化多大就是多大

5.不能用来修饰interface的有()

A.private B.public C.protected D.static

答案:ACD

解释:

interface 是public的, 加不加都是public

6.下列正确的有()

A. call by value不会改变实际参数的数值

B. call by reference能改变实际参数的参考地址

C. call by reference不能改变实际参数的参考地址

D. call by reference能改变实际参数的内容

答案:ACD

7.下列说法 错误的有()

A.在类方法中可 用this来调用本类的类方法

B.在类方法中调用本类的类方法时可直接调用

C.在类方法中只能调用本类中的类方法

D.在类方法中绝对不能调用实例方法

答案:CD

解释:

原来答案中包含A,但是在 JDK1.5中,这样写是不会出错的,只不过会有警告而已。 类方法中当然可以条用其它的方法,比如system.out 。 当然你也可以new Object, 调用一下object.toString()

8.下列说法错误的有()

A. Java面向对象语言容许单独的过程与函数存在

B. Java面向对象语言容许单独的方法存在

C. Java语言中的方法属于类中的成员(member)

D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同

答案:ABC

解释:

java全部完全面向对象的

9.下列说法错误的有 ()

A.能被java.exe成功运行的java class文件必须有main()方法

B. J2SDK就是Java API

C. Appletviewer.exe可利用jar选项运行.jar文件

D.能被 Appletviewer成功运行的java class文件必须有main()方法

答案:BCD

解释:

A正确main方法是入口 BJ2SDK当然不仅仅包含java API C jar选项是java.exe 的选项 D Appletviewer是运行applet的, applet 不用main方法,继承applet类即可。

三、判断题

1.Java程序中的起始类名称必须与存放该类的文件名相同。()

答案:正确

2.Unicode是用16位来表示 一个字的。()

答案:正确

3.原生类中的数据类型均可任意转换。()

答案:错误

1.分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。

答案:

BOOL : if ( !a ) or if(a)

int : if ( a == 0)

float : const EXPRESSION EXP = 0.000001

if ( a < EXP && a >-EXP)

pointer : if ( a != NULL) or if(a == NULL)

篇5:java笔试题

java笔试题

1.java是从( )语言改进重新设计, a.ada b.c c.pasacal d.basic 答案:b

2.下列语句哪一个正确( ) a. java程序经编译后会产生machine code b. java程序经编译后会产生byte code c. java程序经编译后会产生dll d. 以上都不正确 答案:b

3.下列说法正确的有( ) a. class中的constructor不可省略 b. constructor必须与class同名,但方法不能与class同名 c. constructor在一个对象被new时执行 d. 一个class只能定义一个constructor 答案:c

4.提供java存取数据库能力的包是( ) a.java.sql b.java.awt c.java.lang d.java.swing 答案:a

5.下列运算符合法的是( ) a.& b. c.if d.:= 答案:a

6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,c的值是( ) a.0 b.1 c.-1 d.死循环 答案:c

7.下列哪一种叙述是正确的( ) a. abstract修饰符可修饰字段、方法和类 b. 抽象方法的body部分必须用一对大括号{ }包住 c. 声明抽象方法,大括号可有可无 d. 声明抽象方法不可写出大括号 答案:d

8.下列语句正确的是( ) a. 形式参数可被视为local variable b. 形式参数可被字段修饰符修饰 c. 形式参数为方法被调用时,真正被传递的参数 d. 形式参数不可以是对象 答案:a

9.下列哪种说法是正确的( ) a. 实例方法可直接调用超类的实例方法 b. 实例方法可直接调用超类的类方法 c. 实例方法可直接调用其他类的实例方法 d. 实例方法可直接调用本类的类方法 答案:d

二、多项选择题

1.java程序的`种类有( ) a.类(class) b.applet c.application d.servlet

2.下列说法正确的有( ) a. 环境变量可在编译source code时指定 b. 在编译程序时,所能指定的环境变量不包括class path c. javac一次可同时编译数个java源文件 d. javac.exe能指定编译结果要置于哪个目录(directory) 答案:bcd

3.下列标识符不合法的有( ) a.new b.$usdollars c.1234 d.car.taxi 答案:acd

4.下列说法错误的有( ) a. 数组是一种对象 b. 数组属于一种原生类 c. int number=[]={31,23,33,43,35,63} d. 数组的大小可以任意改变 答案:bcd

5.不能用来修饰interface的有( ) a.privateb.public c.protected d.static 答案:acd

篇6:Java经典笔试题(含答案)

选择题(共50题,每题1.5分,共75分。多选题选不全或选错都不得分。)

1. 以下属于面向对象的特征的是(C,D)。(两项)

A) 重载

B) 重写

C) 封装

D) 继承

2. 以下代码运行输出是(C)

public class Person{

private String name=”Person”;

int age=0;

}

public class Child extends Person{

public String grade;

public static void main(String[] args){

Person p = new Child;

System.out.println(p.name);

}

}

A) 输出:Person

B) 没有输出

C) 编译出错

D) 运行出错

3. 在使用super 和this关键字时,以下描述正确的是(A)

A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过

B) super()和this()不一定要放在构造方法内第一行

C) this()和super()可以同时出现在一个构造函数中

D) this()和super()可以在static环境中使用,包括static方法和static语句块

4. 以下对封装的描述正确的是(D)

A) 只能对一个类中的方法进行封装,不能对属性进行封装

B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用

C) 封装的意义不大,因此在编码时尽量不要使用

D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性

5. 以下对继承的描述错误的是(A)

A) Java中的继承允许一个子类继承多个父类

B) 父类更具有通用性,子类更具体

C) Java中的继承存在着传递性

D) 当实例化子类时会递归调用父类中的构造方法

6. 以下程序的运行结果是(D)

class Person{

public Person(){

System.out.println(“this is a Person”);

}

}

public class Teacher extends Person{

private String name=”tom”;

public Teacher(){

System.out.println(“this is a teacher”);

super();

}

public static void main(String[] args){

Teacher teacher = new Teacher();

System.out.println(this.name);

}

}

A) this is a Person

this is a teacher

tom

B) this is a teacher

this is a Person

tom

C) 运行出错

D) 编译有两处错误

7. 以下说法错误的是()

A) super.方法()可以调用父类的所有非私有方法

B) super()可以调用父类的所有非私有构造函数

C) super.属性可以调用父类的所有非私有属性

D) this和super关键字可以出现在同一个构造函数中

8. 以下关于final关键字说法错误的是(A,C)(两项)

A) final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性

B) final修饰的类肯定不能被继承

C) final修饰的方法不能被重载

D) final修饰的变量不允许被再次赋值

9. 访问修饰符作用范围由大到小是(D)

A) private-default-protected-public

B) public-default-protected-private

C) private-protected-default-public

D) public-protected-default-private

10. 以下(D)不是Object类的方法

A) clone()

B) finalize()

C) toString()

D) hasNext()

11. 多态的表现形式有(A)

A) 重写

B) 抽象

C) 继承

D) 封装

12. 以下对重载描述错误的是(B)

A) 方法重载只能发生在一个类的内部

B) 构造方法不能重载

C) 重载要求方法名相同,参数列表不同

D) 方法的返回值类型不是区分方法重载的条件

13. 以下(D)添加到ComputerBook中不会出错

class Book{

protected int getPrice(){

return 30;

}

}

public class ComputerBook extends Book{

}

A) protected float getPrice(){}

B) protected int getPrice(int page){}

C) int getPrice(){}

D) public int getPrice(){return 10;}

14. 以下对抽象类的描述正确的是(C)

A) 抽象类没有构造方法

B) 抽象类必须提供抽象方法

C) 有抽象方法的类一定是抽象类

D) 抽象类可以通过new关键字直接实例化

15. 以下对接口描述错误的有(D)

A) 接口没有提供构造方法

B) 接口中的方法默认使用public、abstract修饰

C) 接口中的属性默认使用public、static、final修饰

D) 接口不允许多继承

16. 以下代码,描述正确的有(A)

interface IDemo{

public static final String name; 1

void print(); 2

public void getInfo(); 3

}

abstract class Person implements IDemo{ 4

public void print(){

}

}

A) 第1行错误,没有给变量赋值

B) 第2行错误,方法没有修饰符

C) 第4行错误,没有实现接口的全部方法

D) 第3行错误,没有方法的实现

17. 接口和抽象类描述正确的有(B,C)(两项)

A) 抽象类没有构造函数

B) 接口没有构造函数

C) 抽象类不允许多继承

D) 接口中的方法可以有方法体

18. 以下描述错误的有(C)

A) abstract 可以修饰类、接口、方法

B) abstract修饰的类主要用于被继承

C) abstract 可以修饰变量

D) abstract修饰的类,其子类也可以是abstract修饰的

19. 以下描述正确的有(B)

A) 方法的重写应用在一个类的内部

B) 方法的重载与返回值类型无关

C) 构造方法不能重载

D) 构造方法可以重写

20. 以下程序运行结果是(A)

public class Test extends Father{

private String name=”test”;

public static void main(String[] args){

Test test = new Test();

System.out.println(test.getName());

}

}

class Father{

private String name=”father”;

public String getName() {

return name;

}

}

A) father

B) test

C) 编译出错

D) 运行出错,无输出

21. 以下对异常的描述不正确的有(C)

A) 异常分为Error和Exception

B) Throwable是所有异常类的父类

C) Exception是所有异常类父类

D) Exception包括RuntimeException和RuntimeException之外的异常

22. 在try-catch-finally语句块中,以下可以单独与finally一起使用的是(B)

A) catch

B) try

C) throws

D) throw

23. 下面代码运行结果是(B)

public class Demo{

public int add(int a,int b){

try{

return a+b;

}catch(Exception e){

System.out.println(“catch 语句块”);

}finally{

System.out.println(“finally 语句块”);

}

return 0;

}

public static void main(String[] args){

Demo demo = new Demo();

System.out.println(“和是:”+demo.add(9,34));

}

}

A) 编译异常

B) finally语句块 和是:43

C) 和是:43 finally语句块

D) catch语句块 和是:43

24. 以下描述不正确的有(D)

A) try块不可以省略

B) 可以使用多重catch块

C) finally块可以省略

D) catch块和finally块可以同时省略

25. 以下对自定义异常描述正确的是(C)

A) 自定义异常必须继承Exception

B) 自定义异常可以继承自Error

C) 自定义异常可以更加明确定位异常出错的位置和给出详细出错信息

D) 程序中已经提供了丰富的异常类,使用自定义异常没有意义

26. 以下程序运行结果是(D)

public class Test {

public int div(int a, int b) {

try {

return a / b;

}catch(Exception e){

System.out.println(“Exception”);

}catch(NullPointerException e){

System.out.println(“ArithmeticException”);

}

catch (ArithmeticException e) {

System.out.println(“ArithmeticException”);

} finally {

System.out.println(“finally”);

}

return 0;

}

public static void main(String[] args) {

Test demo = new Test();

System.out.println(“商是:” + demo.div(9, 0));

}

}

A) Exception finally 商是:0

B) ArithmeticException finally 商是:0

C) finally商是:0

D) 编译报错

27. 以下对TCP和UDP描述正确的是(D)

A) TCP不能提供数据的可靠性

B) UDP能够保证数据库的可靠性

C) TCP数据传输效率高于UDP

D) UDP数据传输效率高于TCP

28. 在Java中,下面对于构造函数的描述正确的是(D)。(选择一项)

A) 类必须显示定义构造函数

B) 构造函数的返回类型是void

C) 构造函数和类有相同的名称,并且不能带任何参数

D) 一个类可以定义多个构造函数

29. 根据下面的代码,

String s = null;

会抛出NullPointerException异常的有(A,C)。[两项]

A) if( (s!=null) & (s.length()>0) )

B) if( (s!=null) & & (s.length()>0) )

C) if( (s==null) | (s.length()==0) )

D) if( (s==null) || (s.length()==0) )

30. .在Java中,关于HashMap类的描述,以下廉洁错误的是( B )。

A) HashMap使用键/值得形式保存数据

B) HashMap 能够保证其中元素的顺序

C) HashMap允许将null用作键

D) HashMap允许将null用作值

31. 下列选项中关于java中super关键字的说法错误的是( B )

A) super关键字是在子类对象内部指代其父类对象的引用

B) super关键字不仅可以指代子类的直接父类,还可以指代父类的父类

C) 子类可以通过super关键字调用父类的方法

D) 子类可以通过super关键字调用父类的属性

32. 在Java中,以下代码( A )正确地创建了一个InputStreamReader对象。

A) InuptStreamReader(new FileInputStream(“1.dat”));

B) InuptStreamReader(new FileReader(“1.dat”));

C) InuptStreamReader(new BufferReader(“1.dat”));

D) InuptStreamReader (“1.dat”);

33. 在Java中,( D )类提供定位本地文件系统,对文件或目录及其属性进行基本操作。

A) FileInputStream

B) FileReader

C) FileWriter

D) File

34. Java中的集合类包括ArrayList、LinkedList、HashMap等类,下列关于集合类描述错误的是(C)(选择一项)

A) ArrayList和LinkedList均实现了List接口

B) ArrayList的访问速度比LinkedList快

C) 添加和删除元素时,ArrayList的表现更佳

D) HashMap实现Map接口,它允许任何类型的键和值对象,并允许将null用作键或值

35. 在Java中开发JDBC应用程序时,使用DriverManager类的getConnection()方法建立与数据源的连接语句为:

Connection con = DriverManager.getConnection(“jdbc:odbc:news”);

URL连接中的“news”表示的是(C)(选择一项)

A) 数据库中表的名称

B) 数据库服务器的机器名

C) 数据源的名称

D) 用户名

36. 在Java中,JDBCAPI定义了一组用于与数据库进行通信的接口和类,它们包括在(B)包中。

A) java.lang

B) java.sql

C) java.util

D) java.math

37. Java中,以下( B )接口以键_值对的方式存储对象。

A) java.util.Collection

B) java.util.Map

C) java.util.List

D) java.util.Set

38. 以下关于对象序列化描述正确的是( C,D )[两项]

A) 使用FileOutputStream可以将对象进行传输

B) 使用PrintWriter可以将对象进行传输

C) 使用ObjectOutputStream类完成对象存储,使用ObjectInputStream类完成对象读取

D) 对象序列化的所属类需要实现Serializable接口

39. 在Java中,( A )类可用于创建链表数据结构的对象。

A) LinkedList

B) ArrayList

C) Collection

D) HashMap

40. 分析下面这段Java代码,它的运行结果是( C )。

import java.io.*;

public class B{

public static void main(string [] args){

int i=12;

System.out.println(i+=i-=i*=i);

}

}

A) 100

B) 0

C) -120

D) 程序无法编译

41. 使用JDBC事务的步骤是(C,A,B,D)(多选)

A) 取消Connection的事务自动提交方式

B) 发生异常回滚事务

C) 获取Connection对象

D) 操作完毕提交事务

42. 以下对JDBC事务描述错误的是( B )

A) JDBC事务属于JAVA事务的一种

B) JDBC事务属于容器事务类型

C) JDBC事务可以保证操作的完整性和一致性

D) JDBC事务是由Connection发起的,并由Connection控制

43. 要通过可滚动的结果集更新数据,以下正确的是(A

A) pst=con.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE)

B) pst=con.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)

C) pst=con.prepareStatement(sql, Resu ltSet.TYPE_SCROLL_SENSITIVE)

D) pst=con.prepareStatement(sql, ResultSet.CONCUR_UPDATABLE)

44. 存储过程pro有两个参数,第一个为输入参数,第二个为输出参数,以下代码正确的是(C)

A) CallableStatement cst=con.prepareCall(“(call pro(?,?))”);

B) CallableStatement cst=con.prepareCall(“(call pro(?))”);

C) CallableStatement cst=con.prepareCall(“{call pro(?,?)}”);

D) CallableStatement cst=con.prepareCall(“{call pro(?,?,?)}”);

45. 以下描述正确的是(B)

A) CallableStatement是PreparedStatement的父接口

B) PreparedStatement是CallableStatement的父接口

C) CallableStatement是Statement的子接口

D) PreparedStatement是Statement的父接口

46. 要删除book表中书籍(bookName)是”java”的记录,以下代码正确的是(A)

String sql=”delete from book where bookName=?”;

PreparedStatement pst=con.preparedStatement(sql);

pst.execute();

A) pst.setString(1,”java”);

B) pst.setString(0,”java”);

C) pst.setInt(0,”java”);

D) 以上选项都不正确

47. 获取ResutlSet对象rst的第一行数据,以下正确的是(B)

A) rst.hashNext();

B) rst.next();

C) rst.first();

D) rst.nextRow();

48. 以下可以正确获取结果集的有(AD)(多选)

A) Statement sta=con.createStatement();

ResultSet rst=sta.executeQuery(“select * from book”);

B) Statement sta=con.createStatement(“select * from book”);

ResultSet rst=sta.executeQuery();

C) PreparedStatement pst=con.preparedStatement();

ResultSet rst=pst.executeQuery(“select * from book”);

D) PreparedStatement pst=con.preparedStatement(“select * from book”);

ResultSet rst=pst.executeQuery();

49. 以下负责建立与数据库连接的是(D)

A) Statement

B) PreparedStatement

C) ResultSet

D) DriverManager

50. 使用JDBC连接数据库的顺序是(B,A,D,C,E)(多选)

A) 加载驱动

B) 导入驱动包

C) 发送并处理SQL语句

D) 建立于数据库的连接

E 关闭连接

二、简答题(各5分,共25分)

1、在java中如果声明一个类为final,表示什么意思? (不计分)

答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。

1、父类的构造方法是否可以被子类覆盖(重写)?

答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。

2、请讲述String 和StringBuffer的区别。

答:String 类所定义的对象是用于存放”长度固定”的字符串。

StringBuffer类所定义的对象是用于存放”长度可变动”的字符串。

3、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢?

答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。

4、分析sleep()和wait()方法的区别。

答: sleep睡眠的意思 : sleep() 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。

wait等待的意思: 如果调用了 wait() 方法,线程将处于等待状态。用于在两个或多个线程并发运行时。

5、谈谈你对抽象类和接口的理解。

答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。他使用extends来继承。

接口:一个接口允许一个类从几个接口继承而来,Java 程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是interface来实现。

篇7:java面试笔试题大

JAVA相关基础知识

1、面向对象的特征有哪些方面

1.抽象:

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面,抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。

2.继承:

继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。

3.封装:

封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。

4. 多态性:

多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

2、String是最基本的数据类型吗?

基本数据类型包括byte、int、char、long、float、double、boolean和short。

java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类

3、int 和 Integer 有什么区别

Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。

原始类型封装类

booleanBoolean

charCharacter

byteByte

shortShort

intInteger

longLong

floatFloat

doubleDouble

引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。

4、String 和StringBuffer的区别

JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。

5、运行时异常与一般异常有何异同?

异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

6、说出Servlet的生命周期,并说出Servlet和CGI的区别。

Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。

与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。

7、说出ArrayList,Vector, LinkedList的存储性能和特性

ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。

8、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。

EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技术实现。

SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。

对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上运行的业务逻辑。

对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。

Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless Session Bean ,这两种的 Session Bean都可以将系统逻辑放在 method之中执行,不同的是 Stateful Session Bean 可以记录呼叫者的状态,因此通常来说,一个使用者会有一个相对应的 Stateful Session Bean 的实体。Stateless Session Bean 虽然也是逻辑组件,但是他却不负责记录使用者状态,也就是说当使用者呼叫 Stateless Session Bean 的时候,EJB Container 并不会找寻特定的 Stateless Session Bean 的实体来执行这个 method。换言之,很可能数个使用者在执行某个 Stateless Session Bean 的 methods 时,会是同一个 Bean 的 Instance 在执行。从内存方面来看, Stateful Session Bean 与 Stateless Session Bean 比较, Stateful Session Bean 会消耗 J2EE Server 较多的内存,然而 Stateful Session Bean 的优势却在于他可以维持使用者的状态。

9、Collection 和 Collections的区别。

Collection是集合类的上级接口,继承与他的接口主要有Set 和List.

Collections是针对集合类的'一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

10、&和&&的区别,

&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。

11、HashMap和Hashtable的区别。

HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。

HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。

HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。

Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。

Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。

12、final, finally, finalize的区别。

final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。

finally是异常处理语句结构的一部分,表示总是执行。

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。

13、sleep() 和 wait() 有什么区别?

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

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

14、Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。

15、error和exception有什么区别?

error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

16、同步和异步有何异同,在什么情况下分别使用他们?举例说明。

如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。

当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。

17、abstract class和interface有什么区别?

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

18、heap和stack有什么区别。

栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。

堆是栈的一个组成元素

19、forward 和redirect的区别

forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。

redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

20、EJB与JAVA BEAN的区别?

Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。

21、Static Nested Class 和 Inner Class的不同。

Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。

22、JSP中动态INCLUDE与静态INCLUDE的区别?

动态INCLUDE用jsp:include动作实现 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。

静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面

篇8:java面试笔试题 (WEB)

1. jsp有哪些内置对象?作用分别是什么?

一共有9个内置对象

pageContext javax.servlet.jsp.pageContext

request javax.servlet.http.HttpServletRequest

response javax.servlet.http.HttpServletResponse

session javax.servlet.http.HttpSession

application javax.servlet.ServletContext àthis.getServletContext

config javax.serlvet.ServletConfig

exception java.lang.Throwable

page java.lang.Object

out javax.servlet.jsp.JspWriter

作用:

1、pageContext 表示页容器 àEL表达式、标签 、上传

2、request 服务器端取得客户端的信息:头信息 、Cookie 、请求参数 ,最大用处在MVC设计模式上

3、response 服务器端回应客户端信息:Cookie、重定向

4、session 表示每一个用户,用于登录验证上

5、application 表示整个服务器

6、config 取得初始化参数,初始化参数在web.xml文件中配置

7、exception 表示的是错误页的处理操作

8、page 如同this一样,代表整个jsp页面自身

9、out 输出 ,但是尽量使用表达式输出

2. jsp有哪些动作?作用分别是什么?

jsp共有以下6中基本动作

:在页面被请求的时候包含一个文件

:寻找或者实例化一个javaBean

:设置javaBean的属性,通过反射调用方法

:取得某个javaBean的属性

:把请求转到一个新的页面

:插入Applet程序的代码

:用于传参数,和forward一起使用

3. jsp 中动态INCLUDE和静态INCLUDE 的区别?

动态INCLUDE 用动作实现:

如果包含的是动态页,则先编译之后再进行处理,它总是会检查所包含文件中的变化,并且可以带参数

静态INCLUDE用<%@ include %>伪码实现:

<%@ include file=”include.jsp” %>直接将内容先包含后处理,它不会检查所包含的文件的变化,适用于包含静态页面

4. 两种跳转方式分别是什么?有什么区别?

客户端跳转:跳转之后地址栏不改变,执行完页面后不会转向还会回来,相当于函数调用,并且可以传递request属性,实际上是对RequestDispatcher接口的封装

服务器端跳转:response.sendRedirect(),跳转之后地址栏改变,完全转向新的页面,不会再回来,相当于go to 语句。

5. 请总结一下WEB开发中的会话跟踪实现

1、Session也是最常用的一种

2、Cookie

3、地址重写

4、隐藏域

6. 在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选哪些字符

(< >& “ ‘ 空格 乘号 除号 .........)

因为以上的标记都属于HTML范畴的内容,所以必须进行转义操作

显示效果 符号说明 实体名表示 实体编号表示

空格符

< 小于号 < <

>大于号 >>

& 符号& & &

“ 双引号 “ ”

C 版权符号 &169;

R 注册商标

× 乘号 × ×

÷ 除号 ÷ ÷

‘ 单引号

7. 说明Jsp中errorpage的作用域,应用范围

表示错误页的操作,在一般的站点中,只要一个程序出现了错误,就是产生了异常,则可以统一跳转到一个页面上进行显示,那么这种操作就属于错误页的处理,但是简单的错误页基本上都是在Jsp的开发中使用的。要想进行错误页的设置,需要满足以下两个条件:

1. 在错误能够处理的页上的page指令中,增加:isErrorpage=”true”,表示可以处理错误

2. 在每一个页面指定errorpage,执行isErrorpage为true的页面。

如果现在希望能够配置一种全局的错误处理的话,则可以在Web.xml文件中进行配置

404

/errors.jsp

java.lang.NullpointerException

/errors.jsp

一旦出现错误之后,会自动跳转到指定的页面,但是这样的跳转,永远都是属于服务器端跳转

篇9:完美时空 java 笔试题

完美时空 java 笔试题老早之前笔的,当时都不会,就把题抄到纸上了,发现完美还在通知笔试??发上来大家参考一下吧

简答题:

死锁是怎么出现的?如何避免?

数据库设计的第三范式;

什么是存储过程?其原理和好处?

IP头和TCP头分别包含什么信息;

JAVA中异常的分类;

Linux中syslog的分类?默认文件?日志轮转的配置;

C++中虚函数的实现机制;

windows的hernel32.dll和user.dll分别完成了哪些方面的'函数封装;

程序输出题:

System.out.println(2.0-1.1); 请问这条语句有问题吗,输出结果是什么? 1 :

2 : 有什么问题,输出结果是什么?

public class Test {

public static void main(String args[])

{

final long M = 24*60*60*1000*1000;

final long S = 24*60*60*1000;

System.out.println(“M is : ” + M);

System.out.println(“S is : ” + S);

System.out.println(M/S);

}

}

还有一道输出题,好像是print和println 不记得了

编程题:

用基本的字符操作函数完成IP地址与十进制之间的转换,

大概是这样 编程题给了个转换的例子,我当时怎么转都转不对,就没写。后来听说那个例子本身就不对。。。

对了,还有个智力题:8个球,一个球较重,一个天平,最少次数找到重球。类似的吧,我怎么记得不是8个球。

毕业生求职网提供相关文章:  应用系统开发笔试题    笔试题(信令网)   网通集团笔试题目

相关专题 笔试答案