搜档网
当前位置:搜档网 › Java经典面试笔试题及答案

Java经典面试笔试题及答案

Java经典面试笔试题及答案
Java经典面试笔试题及答案

1.什么是对象序列化,为什么要使用?

所谓对象序列化就是把一个对象以二进制流的方式保存到硬盘上。好处:方便远程调用。

2.值传递与引用传递的区别?

所谓值传递就是把一个对象的值传给一个新的变量,但是系统会给这个新的变量开辟一个新的内存空间。不会改变原有的值所谓引用传递就是把一个对象在堆中保存的数据传递给一个变量,此时新的变量与原有的变量对应同一个内存存储空间,当新的变量修改对象的属性时,内存中的数据也会修改。

3.接口与抽象类的区别?

1:接口里面不可以实现方法体,抽象类可以实现方法体。

2:接口可以多继承接口,抽象类不可以。

3:接口需要被子类实现,抽象类是要被子类继承(单一继承)。

4:接口中只能有公有的方法和属性而且必须赋初始值,抽象类中可以有私有方法和属性.

5: 接口中不能存在静态方法,但属性可以和final,抽象类中方法中可以有静态方法,属性也可以。

4.谈谈继承,为什么要使用继承?

所谓继承就是找出几个类中共同的部分,提取出来作为父类。而子类只需要继承父类,就可以共享父类的方法。

使用继承能够减少重复的代码。

5.方法重载的好处?

所谓重载就是在一个类中可以定义多个相同的方法,但是方法的参数类型和参数的个数以及顺序要不同。

重载的好处就是能够让我们很快的掌握该方法的功能,我们只要要记住该方法就能很快的理解该方法的参数以及参数的作用

6.项目中印象最深的部分?

我觉得在该项目中我体现到了反射技术的强大之处,原来我一直不清楚反射是一种什么样的技术,只知道一些概念上的知识,经过这个项目之后,终于知道该怎样灵活运用反射,以及在什么时候运用。

谈谈你对面向对象的理解与认识?

我觉得使用面向对象这种思维的方式比较符合我们人类的思想,不需要去学习一些什么新的思考方式,就按照现实生活做的一些故事就能让人理解该内容的知识以及他们的作用。

我的看法就是:

1:当加入新的功能的时候不会修改原有的代码。(面向接口编程) 2: 当我们写的一个类可以重复的运用在其他项目中。(代码的复用性)

3:当写一个新类的时候要考虑到他的可扩展性。(灵活性)

7.谈谈集合框架?

集合框架分为三部分,第一部分是collection接口,第二部分是Map接口、第三部分是collections帮助类

首先说一下collection接口,collection接口下面的接口分为set 接口、list接口,在往下面就是他们一些实现类。

说到实现类在分为两部分,第一部分是set的实现类有TreeSet、HashSet,第二部分是list的实现类有:Arraylist、LinkedList、Vector。

8.再说Map接口,map接口下面有treeMap、HashMap、HashTable 三个实现类。

最后说collections帮助类,collections提供了一系列静态方法实现对各种集合的搜索、排序、线程完全化等操作。

9.什么是异常?描述下异常处理?

所谓异常就在执行程序的时发生的错误,他能终止正在执行的程序。

异常的处理:1:使用try-catch捕获异常。

2:使用throw-throws抛出异常。

10.多线程的优先级?为什么要分优先级?

因为有有一些线程可能比较重要,所以才划分优先级。

异常框架的类结构?

Throwable所有错误的超类,他下面有两个子类:error和Exception。

error代表系统级的错误能捕获,但是不能处理。

Exception代表异常主要出自于程序,可以捕获也能处理。Exception有分为两类:编译期异常、运行期异常。

区别他是运行期异常还是编译期异常就看他是不是RuntimeException的子类,如果是的话,就是运行期异常否则是编

译期异常。

谈谈HashMap与Hashtable的区别。

HashMap:hashmap中可以有空值,线程不安全的类。hashmap的父类是abstractMap抽象类(效率高)

HashTable:hashtable中不允许有空值,线程安全的类.hashtable的父类是Dictionary类(效率低)

说一下iterator。

iterator是一个接口,用于实现对容器里面的元素遍历操作。

任何的遍历都可以使用iterator。

什么是泛型?它有什么样的好处?

泛型就是自己指定一种类型,以后存放的东西就只能有这一种类型。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。

说一下你在项目中遇到的异常,并说出什么时候发生的,怎么解决的。空指针异常最常见。根据异常提示找到相应的类进行处理。发生的原因很多,比如没有初始化变量,没有进行赋值等都是空指针所包含的。你的程序遇到错时怎么解决的?

根据错误提示找到错误的API进行相应的处理。

谈谈&&和&的区别

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

System.out和System.in是什么意思?

System.out是输出。

System.in是输入

java为什么能够跨平台?

对于不同的系统平台有不同的虚拟机,虚拟机提供了硬件平台规范。用java开发的程序被编译成由java虚拟机指令组成的字节代码,虚拟机会将这些指令翻译成操作系统特定的指令.(因为jvm屏蔽了底层操作系统的硬件)。

private变量能不能被其他类访问?如果能,怎么访问?

能。通过反射. getDeclaredField_r();

演示java项目如何打包成jar文件

1:选择导出jar 直到输出

java的环境变量如何配置?为什么要配置?

1:在我的电脑属性高级环境变量系统变量新建变量名java-Home,设置值:java的JDK目录

2:在选择新建设置变量名PATH 变量值%java_home%/bin目录为了方便在dos窗口操作。

static和非static修饰的变量哪个生命周期长?

static的生命周期长。因为他一直在内存里面。

什么是线程同步?

线程同步就是说在同一时间访问的资源的时候,资源只能被一个线程所使用.

什么是封装?封装的好处是什么?

封装:封装就是把一个已经实现好的功能的代码,放在一个方法中(实现了隐藏)。

好处:代码的重用性、好全性、只需要调用该方法不管具体的实现

在线程中wait与sleep的区别?

1:wait是Object定义的方法,而sleep是线程Thread定义的方法。2:sleep是让当前线程睡泯,所以可以放在任何位置,而wait是让当前线程放弃资源的使用权,必须放在同步块或同步方法里面。

3:sleep他不会释放对象锁,而wait会释放对象同步锁.

4:sleep是等待一段时间后会自动醒来,而wait必须让其他的线程唤醒。

Class 和class的区别

class是java的关键字。

Class是类的名字。

awt和swing的区别?

awt是重量级的组件。

swing是轻量级的组件.

比如:(在swing组件中当我们调用repaint()方法时,会很快调用paint(),而对于重量级组件会首先调用upate()方法,然后upate()方法再调用paint()方法,在重量级组件中实现双缓冲,我们就要重写upate()方法,在重写的时候记得实现帅新屏幕).

为什么实现一个接口必须要实现接口里面所有的方法?

因为这是sun公司的规定。如果不实现它里面所有的方法那就不叫接

线程和进程的区别是什么?

进程是一个小的应用程序,需要分配内存空间。

线程是进程中的一个顺序控制流,也可以这样理解(线程是进程的实体).

Java基础技能中强调程序代码的读写能力,如果一个类很长,你会怎样读写?

1:类分解,每个类只做他该做的事情。

2:方法分解。

抽象方法能不能是private和static修饰符?

能。

用接口有什么好处?

1:使用接口有很好的扩展性。

2:接口可以多继承接口。

3:隐藏实现。

什么是反射?

所谓反射就是在编译的时候不知道加载什么,只有等到运行的时候才知道该执行什么。

创建对象的方式有哪些?

1:new 2:反射3:clone 4:反序列化

transient是什么意思?

transient代表无法到达某一对象所抛出的异常。但也不代表没有该对

在设计类的时候,你是怎么使用静态变量和成员变量的?

如果需要一直存在于内存当中,就选择静态变量否则就选择成员变量。

定义抽象方法的意义何在?

1:为了减少重复代码。

2:抽象方法有很好的扩展性。

谈集合遍历的方式

forEach()、for()、iterator

java安全性体现在什么地方? 1:Java提供一个用于网络/分布式的计算环境。因此,Java强调安全性,如确保无病毒、小应用程序运行安全控制等等。

2:Java的验证技术是以公钥(public-key)加密算法为基础,而且从环境变量、类加载器、文件系统、网络资源和名字空间等方面实施安全策略。

谈谈线程所拥有的几种状态

就绪:线程分配了CPU以外的全部资源,等待获得CPU调度

执行:线程获得CPU,正在执行

阻塞:线程由于发生I/O或者其他的操作导致无法继续执行,就放弃处理机,转入线程就绪队列

挂起:由于终端请求,操作系统的要求等原因,导致挂起。

面向对象的特征有哪些?

封装、继承、多态

解释一下在项目里你怎么去实现多线程的。

1:一般是实现Runnable接口,new Thread().start(); 重写run();

启动线程时可以调用run()方法吗?

可以.因为run方法里面执行的代码就是线程所要执行的方法.

Java程序的执行过程是怎样的?

java源程序编译.class字节码类加载器字节码校验器解释执行Java的引用数据类型有哪些?

对象、集合、数组、接口

变量按作用域分类分为几种?

分为两种。局部变量和全局变量.

集合里的接口有哪些?请你创建一个List类的实例。

Collection接口、set接口、list接口、map接口、iterator接口

List list = new ArrayList();

int与Integer的区别?

int是原始数据类型,integer是int的包装类,他提供转换类型的很多方法。

checked异常与unchecked异常的区别是什么?

区分他们的区别主要是看他们是不是runtime的子类,如果是runtime 的子类那么就是运行期异常,否则是编译期异常。

final与finally、finalize的区别?

final用于声明属性、方法和类,分别表示属性不可更改,方法不可重

写,类不可以继承。

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

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

重写与重载的区别?参数一样,返回类型不一样是重载吗?

重载:方法名相同,参数类型不同,参数个数不同,参数顺序不同。重写:方法名相同,参数的类型相同,返回的类型相同。

不是。因为重载是根据参数来断定的。

写一个数组的创建。

int[] i = new int[5];

int[] i={1,2,3,4,5};

什么时候用输入流,什么时候用输出流?

读取数据的时候使用输入流。

写入数据的时候使用输出流.

双缓冲如何实现的?为什么要用双缓冲?

先在内存中分配一个和我门动画窗口一样大的空间(在内存中的空间我门是看不到的),然后利用getGraphics_r()方法去获得给空间并将它全部一次性的显示到我门的屏幕上.这样在我门的动画窗口上面是显示出来就非常的流畅了.避免了上面的闪烁效果.

举出常用的list类。哪种情况用哪种好?

arraylist、LinkedList、Vector.

arraylist是连续的空间,遍历速度快,插入和删除就比较慢。linkedList是一个双向链表存放数据。如果删除和添加元素比较多的话,要效率高的就可以使用LinkedList。

vector和arraylist的功能一样,唯一的区别就是vector是线程安全的,而arraylist是线程不安全的。

Map、list与set的区别?里面常用的类有哪些?

map是以键值对的方式存数据。

list里面的数据可以重复,有顺序

set里面的数据不可以重复,没有顺序。

list的常用类有arraylist

set的常用类有treeset

map的常用类用hashmap

什么时候用继承Thread?什么时候实现Runnable接口?

当一个类中没有继承的时候可以使用thread。

如果一个类中已经使用了继承,就只有实现runnable接口

对对象进行比较怎么做?为什么不用“==”?

其实如果是非String的话,==与equals并没有区别。

因为String他是重写了object的方法,所以这才有了equals比较内容,==比较地址。

静态变量与成员变量的区别。

静态变量在对象加载之前初始化,而成员变量是在编译期间初始化。静态变量可以直接通过类名点的方式进行访问,而成员变量则不行。

访问修饰符有哪几种?它们之间的区别是什么?

有四种。

前提:在一个项目中。

public可以在所有包中的所有类随意进行访问。

private只能在被当前类访问。

protected:在同一包中,或子类可以进行访问。

默认:同包下能被访问。

对象的序列化怎么实现的?

实现Serializable接口。

讲一下多态的概念。

多态就是相同的行为不同的体现方式。(比如:爱好,每个人都要自己的爱好,但是爱好都不同)

子类继承父类,父类的构造方法能被继承吗?

能。

子类中怎么调用父类的方法?

通过super.方法

this、super的用法与区别?

this的访问当前类的属性和方法。

super是访问父类的属性和方法。

什么是构造方法?构造方法的作用?(目的、意义)

构造方法是在调用的时候被new出来的,每个类都有构造方法。

作用:为对象分配内存、初始化类变量、初始化属性、返回引用。

Error和Exception的区别是什么?

Error:是系统级的错误,可以捕获,但不同处理。

exception是程序错误,可以捕获也可以进行处理。

输入输出流分几种?分别在什么时候使用?

输入流:InputStream、Read

输出流:OutputStream、writer

读取字节,使用InputStream 以字符读取用Read

输出字节,使用OutputStream 以字符输出用writer

异常捕获的流程?如果有异常发生是怎样的流程?

try{

容易发生异常的代码

}catch(错误的类型){

打印错误信息

}finally{

不管有没有异常都要执行

}

String是基本数据类型吗?基本数据类型有哪些?

不是。

基本数据类型:byte、short、int、long、float、double、char、boolean Collection与Collections的区别?

Collection是一个接口.

collections是一个帮助类。(主要对查找、排序)

HashMap等是实现的Collection的接口吗?

不是。

hashMap实现的是map接口。他是以键值对的形式保存。

游戏中的paint()方法从何处来的?让窗本重绘最好采用哪种方法? NO!!!没做过。

为什么从集合中取出来的元素都是Object类型的?.

因为他们都是object的子类。

如果try块中有多种异常,在catch块中如何处理?

直接在类型catch中写一个Exception异常。

如果要抛出异常怎么做?

使用throw明确要抛出异常的代码,在方法中使用throws抛出异常类型。

实现接口使用什么关键字?在实现一个接口时必须要做什么?

使用interface关键字。

实现一个接口必须实现这个接口里面的所有方法.

GUI响应一个事件的代码如何写?

确定事件源;确定监听器,监听器需要实现监听器接口,重写其中的方法;完成事件源和监听器的注册

JVM是什么?它的作用是什么?它和java运行环境有什么区别? Java虚拟机是一个抽象的计算机,和实际的计算机一样,它具有一个指令集并使用不同的存储区域。

它负责执行指令,还要管理数据、内存和寄存器。Java解释器负责

将字节代码翻译成特定机器的机器代码

没有java虚拟机就更不要说运行环境了。

集合和数组的区别。

1:集合中可以存放不同元素的类型,而数组中只能放同一种类型的数据。

2:集合的长度可以随着元素的多少自动增长,而数据的长度一旦定义就不能更改。

3:集合中只能放置对象,数组中可以是对象也可以基本数据类型。4:集合提供了很好的算法,而数组里面的算法有限。

final这个修饰符的用法?

final主要修饰属性、方法、类。分别代表属性的值不可更改、方法不可以重写、类不可以继承。

如何定义一个常量?定义常量的意义何在?

使用final定义常量.主要是针对一些不需要修改的数据。

谈谈算术表达式的优先级

No!

是否可以继承String类?

不可以。因为String是final

什么样的类不能被实例化?Math这个类能不能实例化?

抽象类不能被实例化。

math不能被实例化。

基本数据类型和引用数据类型的区别是什么?

基本数据类型他们代表的是元素的实际值,也就是说基本数据类型是存在栈中的。

引用数据类型是元素所代表内存中所指向的一个地址,在栈中只是保存对象的地址。而对象的具体内容是保存在堆中的。

引用数据类型作为参数传递时,传递的是什么?

传递的是所指向内存中的一个地址。

局部变量使用时候需要注意什么问题?

局部变量是定义在方法中。

一个子类能同时继承于多个父类吗?

不能,可能出现菱形错误(比如:一个儿子,他只能有一个爸爸,但是反过来说一个爸爸就可能有多个儿子)

子类继承父类时,在子类构造方法的第一行语句应该怎么写?

throw和throws的区别

throw是明确要抛出的语句代码,throws是声明此方法将抛出某类型的异常

byte的取值范围

byte最大的取值范围是+127

byte最小取值范围是-128

java中采用什么字符编码集?char类型能不能放入一个中文字? Unicode编码。能

main方法中有个参数String[] args。这个参数的值是由谁传递给它的。

由方法传递。

java语言的特点是什么?

简单、面向对象、分布式、跨平台、健壮、解释性、安全、多线程、垃圾回收。

项目开发的流程是怎么样的?

需求分析设计编码测试维护

创建一个线程有几种方法?

有两种方法:1:extends Thread 2:implements Runnable

在Dos界面下如何编译并执行Java程序?

javac 文件名.java

java 文件名

说几个String常用的方法

比如:拆分字符串(split) trim()取出空格length()长度

接口里可以定义变量吗?

可以定义变量,但必须是public,而且必须初始化.

接口里方法修符是什么?

接口方法的修饰符是public.

String和StringBuffer的区别?

String他的长度不可增长。

StringBuffer的长度可以增长.

断言有什么作用?

调试程序。

GUI的布局管理器常见的有哪几种?

jframe:border

jpanel:flow

请列举switch( )括号中能接受的所有数据类型。

int\double\float\long\

构造方法和方法有什么区别?构造方法能不能被重载,能不能被重写? 构造方法主要是为了调用这个类的时候用于new出这个类。

方法的作用是实现了某个功能的代码放到这个方法之中。

构造方法能被重载,不能被重写.

如果一个类实现一个接口,可不可以不实现接口里定义的所有方法? 不可以。如过不实现那就不称为接口.

类InputStream中方法read()的返回值是什么?读出的是什么?

返回的是InputStream,读取出来的是字节码。

如何将实现包装类和基本数据类型转化?

通过包装类提供的一些静态方法和方法进行转换.

什么时候类名和文件名必须一致?

在使用dos命令编译的时候。

java帮助文档是如何生成的?

在导出项目的时候选择javadoc.

游戏主界面有一个while循环,能否直接while(true)?

不能,如果是那样就是永远的循环。

什么是线程安全?

线程安全就是指在同一时间只能有一个能访问资源。比如(上厕所:一个公共厕所和一个私有是测试,那个安全性高)

线程同步化会带什么样的结果?

安全性好。

GC是什么? 为什么要有GC?

垃圾回收机制,因为有牛人帮我们做了这件事,就不需要程序员自己回收垃圾。减少了很多事情。

数组有没有length()这个方法? String有没有length()这个方法?

数组没有length(),只有length属性,String有length().

如何启动线程,它直接调用run()方法有什么区别?

Thread.start()方法启动线程,调用run方法必须启动该线程。

当一个线程进入一个对象的一个同步方法后,能否进入其它非同步方法?

不能。

try {}里有一个return语句,那么紧跟在这个try后的finally {}里的代码会不会被执行,什么时候被执行?

会执行,当return返回后就执行finally里面的代码。

finally的作用是什么?一般在什么时候使用?

finally是无论try块中是否发生异常都能确保进行清理工作。一般都是在资源回收的情况下使用。

IO流操作的步骤是怎么样的?

1:建立流操作流关闭流

进行IO流操作时,如果操作的文件不存在会发生什么情况?

如果文件找不到,会抛出一个文件未找到异常。

什么是主线程?

一个线程必须执行的线程。

finally是不是什么时候都会执行?

不一定。比如:关闭虚拟机。

什么时候用继承,什么时候用接口?

在不是清楚业务的时候建议使用继承。如果是比较清楚业务的话就使用接口。

因为在接口中如果业务不确定,你想在这个接口中增加一个方法,那么他的子类都必须实现,不管他有没有用。

所以一般在业务很清楚的情况下,根据业务的需求进行选择。

Try块中是否所有的语句都一定会执行,为什么?

不是。因为try中只能有一个异常发生。

类的修饰符能不能是private、static、protected?

不能。如果是私有的这个类写来还有什么意义。

谈谈集合的作用

主要是存取数据元素。

如何让JFrame的初始位置居中(在不同的分辨率中)

设置它的setBounds的坐标.

如何将一个字符串转成一个基本数据类型

使用包装类进行转换。

JAVA面试题汇总

目录 概念题 ---------------------------------------------------------------------------------错误!未定义书签。 一、JAVA基础 ------------------------------------------------------------------------------ 错误!未定义书签。 1)面向对象的特征 --------------------------------------------------------------------------------------- 错误!未定义书签。 2)什么是OOP?什么是类?请对比类和对象实例之间的关系。 ----------------------- 错误!未定义书签。 3)简述类与对象的概念 -------------------------------------------------------------------------------- 错误!未定义书签。 4)什么是属性与方法? -------------------------------------------------------------------------------- 错误!未定义书签。 5)什么是封装? ------------------------------------------------------------------------------------------ 错误!未定义书签。 6)描述一下JVM加载class文件的原理机制 --------------------------------------------------- 错误!未定义书签。 7)Java程序怎么优化? -------------------------------------------------------------------------------- 错误!未定义书签。 8)一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?----- 错误!未定义书签。 9)char型变量中能不能存贮一个中文汉字 ----------------------------------------------------- 错误!未定义书签。 10)逻辑操作符(&,|,^)与条件操作符(&&,||)的区别--------------------------------------- 错误!未定义书签。 11)Math.round(11.5)等於多少? Math.round(-11.5)等於多少? ------------------------- 错误!未定义书签。 12)Java有没有goto?-------------------------------------------------------------------------------- 错误!未定义书签。 13)int 和Integer 的区别 --------------------------------------------------------------------------- 错误!未定义书签。 14)如何将数值型字符转换为数字?如何去小数四舍五入保留小数点后两位。错误!未定义书签。 15)short s1 = 1; s1 = s1 + 1;和short s1 = 1; s1 += 1;有什么错误 -------------------------- 错误!未定义书签。 16)float f=3.4是否正确? ----------------------------------------------------------------------------- 错误!未定义书签。 17)String 和StringBuffer的区别 ------------------------------------------------------------------ 错误!未定义书签。 18)String是否是最基本的数据类型,能否被继承 ----------------------------------------- 错误!未定义书签。 19)String s = new String("xyz");创建了几个String Object? ------------------------------- 错误!未定义书签。 20)数组有没有length()这个方法? String有没有length()这个方法? ---------------- 错误!未定义书签。 21)排序都有哪几种方法?用JAVA实现一个快速排序 ----------------------------------- 错误!未定义书签。 22)swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上--- 错误!未定义书 签。 23)在JAVA中,如何跳出当前的多重嵌套循环? ------------------------------------------ 错误!未定义书签。 24)关于日期和时间的几个问题------------------------------------------------------------------- 错误!未定义书签。 25)一个对象被当作参数传递到一个方法,是值传递还是引用传递----------------- 错误!未定义书签。 26)什么时候用assert?------------------------------------------------------------------------------ 错误!未定义书签。 27)GC是什么? 为什么要有GC? ---------------------------------------------------------------- 错误!未定义书签。 28)垃圾回收的优点和原理 ------------------------------------------------------------------------- 错误!未定义书签。 29)垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?错误!未定义书 签。 30)java中会存在内存泄漏吗,请简单描述 -------------------------------------------------- 错误!未定义书签。 31)java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,他们分别是哪些 类?错误!未定义书签。 32)文件和目录(I/O)操作 ------------------------------------------------------------------------ 错误!未定义书签。 33)什么是java序列化?如何实现java序列化?------------------------------------------- 错误!未定义书签。

java经典面试题汇总

Java基础方面: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package 子孙类其他package public √√√√ protected √√√ × friendly √√ × × private √ × × × 不写时默认为friendly 2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口) 答:匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Static Nested Class 和 Inner Class的不同 答:Nested Class (一般是C++的说法),Inner Class (一般是JA V A的说法)。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的方法是否可以改变返回值的类型

百一测评——Java经典面试题 带答案

职业技能题库&在线云笔试平台https://www.sodocs.net/doc/434295571.html, 试卷名称:Java经典面试题带答案 试卷描述:java笔试题目、招聘笔试、微信考试、在线考试 试卷链接:https://www.sodocs.net/doc/434295571.html,/store/open/paperInfo/41651 试卷限时:50分 一.单项选择题 每题分值:2.5分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 1.[单选]Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.[单选]下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确

职业技能题库&在线云笔试平台https://www.sodocs.net/doc/434295571.html, 答案: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.https://www.sodocs.net/doc/434295571.html,ng D.java.swing 答案:A 5.[单选]下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 6.[单选]执行如下程序代码 a=0;c=0;

职业技能题库&在线云笔试平台https://www.sodocs.net/doc/434295571.html, 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.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象

JAVA框架面试题汇总

1.SpringMVC Framework的理解: 1、它是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是java组件。并且和Spring提供的其他基础结构紧密集成 2、不依赖于Servlet API(目标虽是如此,但是在实现的时候确实是依赖于Servlet的) 3、可以任意使用各种视图技术,而不仅仅局限于JSP 4、支持各种请求资源的映射策略 5、它应是易于扩展的 2.简单的谈一下SpringMVC的工作流程? 流程? 1、用户发送请求至前端控制器DispatcherServlet? 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。? 3、处理器映射器找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。? 4、DispatcherServlet调用HandlerAdapter处理器适配器? 5、HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。? 6、Controller执行完成返回ModelAndView? 7、HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet? 8、DispatcherServlet将ModelAndView传给ViewReslover视图解析器? 9、ViewReslover解析后返回具体View? 10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。? 11、DispatcherServlet响应用户 3.如何解决POST请求中文乱码问题,GET的又如何处理呢? 在web.xml中加入: . .CharacterEncodingFilter . .???? .????????encoding .?????? utf-8

Java面试测试题并赋予答案

在main(String[] args)方法内是否可以调用一个非静态方法? 1.不能 同一个文件里是否可以有两个public类? 2.不能 方法名是否可以与构造器的名字相同? 3.可以。 public class Test { public Test(String iceboy) { System.out.println(iceboy); } public void Test(String iceboy) { System.out.println(iceboy); } public static void main(String[] args) { Test a = new Test("abc");//输出“abc” a.Test("iceboy");//输出“iceboy” } } 4.初始化了一个没有run()方法的线程类,是否会出错? 4.不会。 第一种方法:直接继承Thread类。 public class Test { public static void main(String[] args) { ThreadClass t = new ThreadClass(); t.start(); System.out.println("end");//输出“end” } } class ThreadClass extends Thread //Thread类已经实现了空的run()方法。 { } 第二种方法:实现Runnable接口 public class Test { public static void main(String[] args)

{ ThreadClass t = new ThreadClass(); Thread thread = new Thread(t); thread.start(); System.out.println("end"); } } class ThreadClass implements Runnable { public void run() //必须有此方法否则编译报错。它是Runnable接口中的抽象方法。 { System.out.println("Threads"); } } 局部内部类是否可以访问非final变量? 不能访问局部的非final修饰的变量,可以访问局部的使用了final修饰的变量,可以访问成员变量(全局的)。 class Out { private String name = "https://www.sodocs.net/doc/434295571.html,"; void print() { final String work = "out.local.work";//若不是final的则不能被Animal 使用. int age=10; class Animal //定义一个局部内部类.只能在print()方法中使用. //局部类中不能使用外部的非final的局部变量.全局的可以. { public void eat() { System.out.println(work);/ /ok //age=20;//error not final,编译时就会出错 System.out.println(name);/ /ok. } } Animal local = new Animal(); local.eat(); }

JAVA程序员笔试面试题汇总及答案

1. 【基础题】请描述访问控制符的各自作用域与区别 答: √√√ √√√ √√ √ 一、名词解释 二、问答题 1. 【中等题】请说出ArrayList与Vector的区别 答: 主要从二方面来说、 同步性:Vector就是线程安全的,也就就是说就是同步的,而ArrayList就是线程序不安全的,不就是同步的 二、数据增长:当需要增长时,Vector 默认增长为原来一培,而ArrayList却就是原来的一半 2. 【中等题】请说出HashMap与Hashtable的区别 答:HashMap与HashT able主要从三方面来说。 一、历史原因:Hashtable就是基于陈旧的Dictionary类的,HashMap就是Java 1、2引进的Map接口的一个实现 二、同步性:Hashtable就是线程安全的,也就就是说就是同步的,而HashMap就是线程序不安全的,不就是同步的 三、值:只有HashMap可以让您将空值作为一个表的条目的key或value 3. 【基础题】Collection 与Collections的区别 答: Collections就是个java、util下的类,它包含有各种有关集合操作的静态方法。

Collection就是个java、util下的接口,它就是各种集合结构的父接口

第十八章输入输出 笔试题 一、填空题 1. 【基础题】File对象的isFile()方法作用就是判断就是否就是文 件,getAbsolutePath() 方法作用就是获取文件或目录的绝对路径。 2. 【基础题】BufferedReader与BufferedWriter以字符流的方式读写文本文件,且效率更高。 3. 【基础题】与以字节流的方式读写文本文件。 二、选择题 1. 【基础题】下列哪个类就是实体类(BC ) A. InputStream B. PrintStream C. Socket D. Reader E. DataInput 2. 【提高题】请选择下列程序的运行结果(A) public class TestIOapp{ public static void main(String [] args) throws IOException{ StringReader stingin = new StringReader("test"); LineNumberReader in = new LineNumberReader(stingin); PrintWriter out = new PrintWriter(System、out); out、println(in、readLine()); out、flush(); } } A. test B. test:1 C. 1:test D. 1 test 3. 【提高题】请选择下列程序的运行结果( B )

javaWeb面试题(含答案)

1、jsp和servlet的区别、共同点、各自应用的围?? JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。JSP编译后是“类servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层. 2、cookie和session的作用、区别、应用围,session的工作原理??? Cookie:主要用在保存客户端,其值在客户端与服务端之间传送,不安全,存储的数据量有限。 Session:保存在服务端,每一个session在服务端有一个sessionID作一个标识。存储的数据量大,安全性高。占用服务端的存资源。 3、jstl是什么?优点有哪些?? JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)组成。优点有: 1、在应用程序服务器之间提供了一致的接口,最大程序地提高了WEB应用在各应用服务器之间的移植。 2、简化了JSP和WEB应用程序的开发。 3、以一种统一的方式减少了JSP中的scriptlet代码数量,可以达到没有任何scriptlet 代码的程序。在我们公司的项目中是不允许有任何的scriptlet代码出现在JSP中。 4、允许JSP设计工具与WEB应用程序开发的进一步集成。相信不久就会有支持JSTL的IDE 开发工具出现。 4、j2ee的优越性主要表现在哪些方面?MVC模式 a、 J2EE基于JAVA 技术,与平台无关 b、 J2EE拥有开放标准,许多大型公司实现了对该规支持的应用服务器。如BEA ,IBM,ORACLE

华为java笔试面试题

华为Java笔试题+数据库题 一、单项选择题 1.Java是从( B)语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确(B ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 3.下列说法正确的有(C ) A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 4.提供Java存取数据库能力的包是( A) A.java.sql B.java.awt C.https://www.sodocs.net/doc/434295571.html,ng D.java.swing 5.下列运算符合法的是( A) A.&& B.<> C.if D.:= 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是(C ) A.0 B.1 C.-1 D.死循环 7.下列哪一种叙述是正确的( D) A. abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 8.下列语句正确的是( C) A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 9.下列哪种说法是正确的(A ) A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 二、多项选择题 1.Java程序的种类有(BCD ) A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( BCD) A.环境变量可在编译source code时指定

常见的java面试笔试题大汇总

1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 https://www.sodocs.net/doc/434295571.html,ng.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的

(完整版)2019最新Java面试题,常见面试题及答案汇总

ava最新常见面试题+ 答案汇总 1、面试题模块汇总 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。如下图所示: 可能对于初学者不需要后面的框架和JVM 模块的知识,读者朋友们可根据自己的情况,选择对应的模块进行阅读。 适宜阅读人群 需要面试的初/中/高级java 程序员 想要查漏补缺的人 想要不断完善和扩充自己java 技术栈的人 java 面试官 具体面试题 下面一起来看208 道面试题,具体的内容。 一、Java 基础 1.JDK 和JRE 有什么区别? 2.== 和equals 的区别是什么? 3.两个对象的hashCode()相同,则equals()也一定为true,对吗? 4.final 在java 中有什么作用? 5.java 中的Math.round(-1.5) 等于多少? 6.String 属于基础的数据类型吗? 7.java 中操作字符串都有哪些类?它们之间有什么区别? 8.String str="i"与String str=new String(“i”)一样吗? 9.如何将字符串反转? 10.String 类的常用方法都有那些? 11.抽象类必须要有抽象方法吗? 12.普通类和抽象类有哪些区别? 13.抽象类能使用final 修饰吗?

14.接口和抽象类有什么区别? 15.java 中IO 流分为几种? 16.BIO、NIO、AIO 有什么区别? 17.Files的常用方法都有哪些? 二、容器 18.java 容器都有哪些? 19.Collection 和Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和Hashtable 有什么区别? 22.如何决定使用HashMap 还是TreeMap? 23.说一下HashMap 的实现原理? 24.说一下HashSet 的实现原理? 25.ArrayList 和LinkedList 的区别是什么? 26.如何实现数组和List 之间的转换? 27.ArrayList 和Vector 的区别是什么? 28.Array 和ArrayList 有何区别? 29.在Queue 中poll()和remove()有什么区别? 30.哪些集合类是线程安全的? 31.迭代器Iterator 是什么? 32.Iterator 怎么使用?有什么特点? 33.Iterator 和ListIterator 有什么区别? 34.怎么确保一个集合不能被修改?

Java经典面试笔试题及答案

1.什么是对象序列化,为什么要使用? 所谓对象序列化就是把一个对象以二进制流的方式保存到硬盘上。好处:方便远程调用。 2.值传递与引用传递的区别? 所谓值传递就是把一个对象的值传给一个新的变量,但是系统会给这个新的变量开辟一个新的内存空间。不会改变原有的值所谓引用传递就是把一个对象在堆中保存的数据传递给一个变量,此时新的变量与原有的变量对应同一个内存存储空间,当新的变量修改对象的属性时,内存中的数据也会修改。 3.接口与抽象类的区别? 1:接口里面不可以实现方法体,抽象类可以实现方法体。 2:接口可以多继承接口,抽象类不可以。 3:接口需要被子类实现,抽象类是要被子类继承(单一继承)。 4:接口中只能有公有的方法和属性而且必须赋初始值,抽象类中可以有私有方法和属性. 5: 接口中不能存在静态方法,但属性可以和final,抽象类中方法中可以有静态方法,属性也可以。 4.谈谈继承,为什么要使用继承? 所谓继承就是找出几个类中共同的部分,提取出来作为父类。而子类只需要继承父类,就可以共享父类的方法。 使用继承能够减少重复的代码。 5.方法重载的好处?

所谓重载就是在一个类中可以定义多个相同的方法,但是方法的参数类型和参数的个数以及顺序要不同。 重载的好处就是能够让我们很快的掌握该方法的功能,我们只要要记住该方法就能很快的理解该方法的参数以及参数的作用 6.项目中印象最深的部分? 我觉得在该项目中我体现到了反射技术的强大之处,原来我一直不清楚反射是一种什么样的技术,只知道一些概念上的知识,经过这个项目之后,终于知道该怎样灵活运用反射,以及在什么时候运用。 谈谈你对面向对象的理解与认识? 我觉得使用面向对象这种思维的方式比较符合我们人类的思想,不需要去学习一些什么新的思考方式,就按照现实生活做的一些故事就能让人理解该内容的知识以及他们的作用。 我的看法就是: 1:当加入新的功能的时候不会修改原有的代码。(面向接口编程) 2: 当我们写的一个类可以重复的运用在其他项目中。(代码的复用性) 3:当写一个新类的时候要考虑到他的可扩展性。(灵活性) 7.谈谈集合框架? 集合框架分为三部分,第一部分是collection接口,第二部分是Map接口、第三部分是collections帮助类 首先说一下collection接口,collection接口下面的接口分为set 接口、list接口,在往下面就是他们一些实现类。

精选最新2020年JAVA笔试面试考核题库完整版588题(含答案)

2020年JAVA笔试面试题库588题 一、简答题 1.将两个表连接在一起时,下面那一项通常是另外一个表的主键A. 外键 B. 总控键 C. 重复的组 D. 主键 答案:A 2.下列关于Java语言的叙述中,正确的是:A. 源文件名其扩展名为.jar B. Java是不区分大小写的 C. 源文件中public类的数据不限 D. 源文件名必须与public类型的类名相同 答案:D 3.在Weblogic中如果部署的应用访问两个数据库并需要进行事务控制时,则需配置 答案:两阶段提交协议 4.关系数据库中,典型的实体关系模型有三个要素? 答案:数据结构、关系操作、完整性约束 5.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别 答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用HttpServletResponse.sendRequest()方法。 6.下面哪个是合法的布尔值 A. “false” B. false C. 10 答案:B 7.J2EE的三层模型是什么?

面试应聘的JAVA笔试题和答案

一、选择题 1:List, Set, Map是否继承自Collection接口 A:都是,B 都不是 C:List, Set 是 D:Set, Map 是 正确答案 C 2:下面描述哪个是正确的 A:构造器Constructor可被override B:可以继承String类 C:try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code不会被执行D:两个对象值相同(y) == true),那么也有相同的hash code 正确答案 D 3 abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized A:都能 B:都不能 C:可以为static D:可以为native 正确答案 A 4:下面的程序中,temp的最终值是什么? long temo=(int); temp%=2; A: 0 B :1 C :2 D : 3 正确答案 B 5、请在以下选项中选出非基本数据类型的选项 ( ) A: int B:byte C: boolean D:String 正确答案 D 6、阅读下面代码段, 给出以下代码的输出结果 public class Test{ public static void main(String args[]) { String str1 = "abc"; String str = "abc; String str2 = new String("abc"); == str2); == str1); } } A:true,true,true B:true,false,true C:true,true,false D:false,true,true 正确答案 D 7、阅读下面代码段, 给出以下代码的输出结果: int i=1; switch (i) { case 0: "zero");

Java面试笔试题目汇总

算法软件科技Java工程师笔试题 一、选择题(可多选)。 1、Java 之所以可以实现夸平台,是因为Java 程序在运行时使用了: A: JDK ( Java Development Kit ) B: JRE ( Java Runtime Environment ) C: JVM ( Java Virtual Machine ) D: OS ( Operating System ) 2、下列不是Java语言中的关健字的是: A: public B: Static C:main D:void 3、以下程序中最终输出i 的值是: int i = 999; i--; ++i; System.out.println( i++ ); A: 998 B: 999 C:1000 D:1001

4、那个是合法的byte 类型的数据: A: 128 B: 127 C:-129 D: (int)-130 5、以下b 的值是:byte b = (byte)129; A: -126 B: -127 C:-128 D:-129 6、在JDK 1.7 中,对于switch 语句,switch 后面的( ) 中不可以是哪种类型: A: byte B: char C: short D: int E: String F: 枚举G: float H: double 7、对于以下代码,输出结果是: for( int i = 4 ; i > 0 ; i-- ){ int j = 0 ; do{ j++; if( j == 2 ){ break;

} }while( j < i ); System.out.print( j ); A: 4 3 2 1 B: 1 2 2 2 C: 2 2 2 1 D: 2 2 2 2 8、以下声明数组的方式,哪种是正确的: A: int[ 3 ][ 4 ] array; B: int[ 3 ] [] array; C: char [] array [] ; D: String[][] array; E: Object array[][]; F: Object array[][ 3 ]; 9、下列关于package 和import 语句的描述,正确的是: A: 同一个类中package 可以出现1次或多次 B: 同一个类中import 可以出现1 此或多次 C: 对于同一个类中,import 语句必须出现在该类的第一行(不含注释) D: 同一个类中,package 必须出现在该类的第一行(不含注释)

百一测评——Java经典面试题 带答案

试卷名称:Java经典面试题带答案 试卷描述:java笔试题目、招聘笔试、微信考试、在线考试试卷链接:试卷限时:50分 一.单项选择题 每题分值:分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 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. B. C. D. 答案: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.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象 答案:A 9.[单选]下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法

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.https://www.sodocs.net/doc/434295571.html,ng 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.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 答案:A 9.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 答案:D 二、多项选择题 1.Java程序的种类有() A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有() A.环境变量可在编译sourcecode时指定 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.intnumber=[]={31,23,33,43,35,63} D.数组的大小可以任意改变 答案:BCD 5.不能用来修饰interface的有()

相关主题