java面试题(题库全)

VIP免费
2024-12-11 1 0 230KB 62 页 5.9玖币
侵权投诉
面试题集
1 62
面试题集共分为以下十部分:
一、Core Java 1 95 1 24
基础及语法: 1 61 1 13
异常: 62 69 13 15
集合: 70 80 15 18
线程: 81 90 18 21
IO & Socket 91 95 21 24
二、OOAD & UML 96 101 24 25
三、XML 102 105 26 29
四、SQL 106 109 29 31
五、JDBC & Hibernate 110 121 31 35
六、Web 122 161 35 44
七、EJB & Spring 162 179 44 47
八、数据结构& 算法& 计算机基础: 180 187 47 51
九、C++ 188 201 51 55
十、Weblogic 及其它(附加部分) 1 —— 13 55 57
一、CoreJava 部分:(共 95 题:基础 91 道,中等难度 4 道)
基础及语法部分:(共 61 题:基础 60 道、中等难度 1 道)
1、面向对象的特征有哪些方面? 【基础】
答:面向对象的特征主要有以下几个方面:
1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的
方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一
是过程抽象,二是数据抽象。
2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方
法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原
始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例
变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
3)封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这
个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问
其他对象。
4)多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态
性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
2、作用域 public,private,protected,以及不写时的区别?【基础】
答:区别如下:
作用域 当前类 同包 子孙类 其他
2 62
public
protected ×
default × ×
private × × ×
不写时默认为 default
3String 是最基本的数据类型吗? 【基础】
答:不是。
4float float f=3.4 是否正确? 【基础】
:不正确;精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4
5、语句 float f=1.3;编译能否通过?【基础】
:不能;应该用强制类型转换,如下所示:float f=(float)1.3
6short s1 = 1; s1 = s1 + 1;有什么错?
short s1 = 1; s1 += 1;有什么错? 【基础】
答:short s1 = 1; s1 = s1 + 1;s1+1 运算结果是 int 型,需要强制转换类型short s1 = 1; s1 += 1;可以正确
编译,类型提
7Java goto? 【基础】
答:goto java 中的保留字,现在没java 中使用。
8int Integer 有什么区别? 【基础】
答:Java 提供两种不同的类型:用类型和原始类型(或内置类型);
int java 的原始数据类型,Integer java int 提供的封装类。
Java 个原始类型提供了封装类:
原始类型: boolean,char,byte,short,int,long,float,double
BooleanCharacterByteShortIntegerLongFloatDouble
行为完全不同,并且它有不同的语义用类型和原始类型具有不同的特征和用法,它包括:大小
度问题,这种类型以哪种类型的数据结构存储,当用类型和原始类型用个类的实例数据时所指
定的缺省值。对象用实例变量的缺省值null,而原始类型实例变量的缺省值与它的类型有关。
9&&&的区别?【基础】
答:&运算,表示按位与运算,&&逻辑运算,表示逻辑与(and)。
10逻辑操(&,|,^)条件操(&&,||)的区别?【基础】
答:区别主要有两a.条件操作只能布尔型的,逻辑操作不可以布尔,而且可以作数
b.逻辑操作不会产短路
11heap stack 有什么区别?【基础】
答:是一种线集合,其删除元作应同一成,栈按照后进先出的式进处理
的一个元素
12Math.round(11.5) 等于多? Math.round(-11.5)等于多? 【基础】
3 62
Math.round(11.5)==12 Math.round(-11.5)==-11 round 1/2
后求floor
13swtich 是否能作用byte ,是否能作用long ,是否能作用String ? 【基础】
switchexpr1)中,expr1 是一个因此传递给 switch case 语句的参数应该是
intshort char bytelong,string 不能作用于 swtich
14、编程题: 用最有效率的方法算出 2 8 ? 【基础】
答: 2 << 3
15、有length()这个方法? String length()这个方法?【基础】
答:数组没length()这个方法,有 length 性。String length()这个方法。
16JAVA 中,如何跳出当前的多重嵌套循环?【基础】
答:循环前加 label ,然后break:label 方法即可出多重循环
17、构造器 Constructor 是否可被 override? 【基础】
答:构造器 Constructor 不能被继承,因此不能重写 Overriding可以被重Overloading
18、两个对象值相(x.equals(y) == true)但却可有不同的 hash code,这句对不对? 【基础】
答:不对,有同的 hash code
19、是否可以继承 String ? 【基础】
答:String 类是 final 类,不可以继承。
20、以下二语句返回值true 的有:
Abeijing==beijing
Bbeijing.equalsIgnoreCasenew Stringbeijing));【基础】
答:A B
21、当一个对象被当作参数传递到个方法方法可改变这个对象的性,并返回的结
果,那么这里到底值传递还传递? 【基础】
答:是值传递Java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数
就是对该对象的用。对象的内容可以用的方法中改变,对象的用是永远改变的。
22我们在 web 应用开发过程中遇到输种编码的字符,如 iso8859-1 等,如何输出一个种编
码的字符串?【基础】
答:public String translate(String str){
String tempStr = "";
try{
tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");
tempStr = tempStr.trim();
}catch (Exception e){
System.err.println(e.getMessage());
}
4 62
return tempStr;
}
23String StringBuffer 的区别? 【基础】
答:JAVA 个类String StringBuffer即包含多
字符数据。这个 String 类提供了数不可改变的字符串而这个 StringBuffer 类提供的字符串进行修改。
你知字符据要改变的时候你就可以使用 StringBuffer型地,以使用 StringBuffers 态构造字
数据。
24String, StringBuffer StringBuilder 的区别。【基础】
答:String 度是不可变的;StringBuffer 度是可变的,如果字符串内容经
特别是要修改时,那么使用 StringBuffer,如果最String,那么使用 StringBuffer toString()
法;线程全;StringBuilder 是从 JDK 5 始,为 StringBuffer 该类充了一个个线程使用的等类;通
常应该优使用 StringBuilder 类,为它支持所有同的作,但由于它不行同,所以度更
25Overload Override 的区别。Overloaded 的方法是否可以改变返回值的类型? 【基础】
答:方法的重写 Overriding 和重Overloading Java 多态性的不同表现。重写 Overriding 是父类与子
类之多态性的一种表现,重Overloading 是一个类中多态性的一种表现。如果子类中定义方法与其
父类有同的名称和参数,我们该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中
的定义,对它而言,父类中的定义如同被“屏蔽”了。如果一个类中定义了多个同名的方法,它或有
不同的参数个数或有不同的参数类型,称为方法的重(Overloading)Overloaded 的方法是可以改变返回
的类型。
26、定义类 A 和类 B 如下:【基础】
class A {
int a=1;
double d=2.0;
void show(){
System.out.println("Class A: a="+a +"\td="+d);
}
}
class B extends A{
float a=3.0f;
String d="Java program.";
void show(){
super.show( );
System.out.println("Class B: a="+a +"\td="+d);
}
5 62
}
(1) 若在应用程序的 main 方法中有以下语句:
A a=new A();
a.show();
则输出的结果如
(2) 若在应用程序的 main 方法中定义类 B 的对象 b
A b=new B();
b.show();
则输出的结果如
答:出结果为:
1Class A: a=1 d=2.0
2Class A: a=1 d=2.0
Class B: a=3.0 d=Java program
27、描述一下 JVM class 文件的原机制? 【基础】
JVM 中类的装ClassLoader 和它的子类来实现的,Java ClassLoader 是一个重要的 Java
时系统组件。它负责在运行时查找和装文件的类。
28char 型变量中能不能存贮一个中文汉字?为什么? 【基础】
答:能定义成为一个中java unicode 编码,一个 char 16 节,所以一个中
问题的。
29abstract class interface 有什么区别? 【基础】
答:明方法的存在而不实现它的类被叫做抽象类(abstract class),。而可以创建一个变量,其
类型是一个抽象类,它用于创建些基本行为的类,并为该类明方法不能类中实现
该类的情况不能创建 abstract 类的实例并它指向具子类的一个实例。不能有抽象构函数或抽象
方法。Abstract 类的子类为它父类中的所有抽象方法提供实现,否们也是抽象类为。而代之,
类中实现该方法。道其行为的其它类可以类中实现这些方法。接口(interface)是抽象类的变新型多
继承性可通过实现这的接口而。接口中的所有方法是抽象的,所有成publicstatic final
的。一个类可以实现多个接口,当类实现特殊接口时,它定义(即
程序体给予)所有这种接口的方法。然后,它可实现了该接口的类的对象用接口的方
法。于有抽象类,它允许使用接口名作为用变量的类型。通常的态联编用可以转换接口
类型或从接口类型转换,instanceof 运算可以用来决定对象的类是否实现了接口。
30Static Nested Class Inner Class 的不同?【基础】
答:Static Nested Class 是被明为态(static)的部类,它可以不依赖部类实例被实例化。而
通常的部类需要在外部类实例化后才能实例化。
31java 会存在内存泄漏吗,请简单描述。【基础】
6 62
答:存在无用的对象,这些对象不能被 GC 回收导致耗费内存资源
32abstract method 是否static,nativesynchronized?
础】
答:不能。
33态变量和实例变量的区别?【基础】
答:态变量称为类变量全类共有,它不依赖对象,可通过类名访问;而实例变量
必须依存一实例,只能通过对象能访问它。
34、是否可以从一个 static 方法出对static 方法的用?【基础】
答:不可以,如果其中包含对象的 method(),不能保对象始化。
35、写 clone()方法时,通常有一行代码,是什么?【基础】
答:Clone 缺省行为:super.clone(),他负责产生正确大小空间,并逐位复制。
36GC 是什么? 为什么要有 GC? 【基础】
答:GC 垃圾Gabage Collection,内存是编
内存回收会导致程序或系甚至崩溃Java 提供的 GC 能可以自动监测对象是否
作用域从而动回收内存目的,Java 语言提供释放已分配内存方法。Java 程序
担心内存管理垃圾收请求垃圾收集,可以用下面的方法之一:
System.gc() Runtime.getRuntime().gc()
37垃圾回收的优和原。并考虑 2 回收机制。【基础】
答:Java 语言中一个显著的特垃圾回收机制,使 c++程序内存管理的问题
而解,它使Java 程序员在编写程序的时需要考虑内存管理于有个垃圾回收机制,Java 中的
对象不作用域的概念,只有对象作用域圾回收可以有防止内存泄露,有
的使用可以使用的内存垃圾回收器常是作为一个单独别的线程运行,不可预知情况
存堆中已经死的或者长间没有使用的对象清楚,程序不能实时的垃圾回收
对象或所有对象垃圾回收回收机制有分代垃圾回收和标记垃圾回收,增量垃圾回收
38垃圾回收器基本原是什么?垃圾回收可以马上回收内存?有什么知虚拟
垃圾回收?【基础】
答:对于 GC ,当程序员创建对象时,GC 监控这个对象的地大小以及使用情况通常
GC 用有向的方记录管理堆(heap)中的所有对象。通过这种方确定哪些对象是"",哪些对
象是"不可"GC 确定一些对象为"不可"时,GC 就有责任回收这些内存空间可以。程序可以
动执System.gc(),通GC 运行,Java 语言规范并不保GC 一定会执行。
39String s=new String(xyz);创建了几个 String Object? 【基础】
答:两个对象,一个是"xyx",一个是指向"xyx"用对象 s
40、接口是否可继承接口? 抽象类是否可实现(implements)? 抽象类是否可继承实(concrete
class)? 【基础】
7 62
答:接口可以继承接口。抽象类可以实现(implements)接口,抽象类可继承实类,前提是实
有明确的构函数。
41Java 的接口和 C++类的同和不同。【基础】
答:Java 支持多继承,而有可能个类或对象要使用分别几个类或对象里面的方法或性,
现有的继承机制就不能满足与继承相比,接口有更的灵活性,为接口中任何实现代码。
一个类实现了接口以,该类要实现接口里面所有的方法和,并且接口里面的态下面
public static,所有方法默认情况下是 public.一个类可以实现多个接口。
42、一个.java”源文件中是否可以包含多个类(不是部类)?有什么制?【基础】
答:可以;必须只有一个类名与文件同。
43出一些常用的类,包,接口,请各举 5 个。【基础】
答:常用的类:BufferedReader BufferedWriter FileReader FileWirter String Integer
常用的包:java.lang java.awt java.io java.util java.sql
常用的接口:Remote List Map Document NodeList
44Anonymous Inner Class () 是否可以 extends()其它类?是否可以 implements(
)interface(接口)? 【基础】
答:可以继承其他类或实现其他接口,swing 编程中常用
45部类可以用他包含类的成吗?有有什么制?【基础】
答:一个部类对象可以访问创建它的部类对象的内容
46java 中实现多态的机制是什么?【基础】
答:方法的覆盖 Overriding 和重Overloading java 多态性的不同表现;覆盖 Overriding 是父类与子
类之多态性的一种表现,重Overloading 是一个类中多态性的一种表现。
47java 中一个类被明为 final 类型,表示了什么意?【基础】
答:表示该类不能被继承,是顶级类。
48、下面哪些类可以被继承? 【基础】
1java.lang.Thread (T)
2java.lang.Number (T)
3java.lang.Double (F)
4java.lang.Math (F)
5java.lang.Void (F)
6java.lang.Class (F)
7java.lang.ClassLoader (T)
答:127 可以被继承。
49、指出下面程序的运行结果: 【基础】
class A{
static{
8 62
System.out.print("1");
}
public A(){
System.out.print("2");
}
}
class B extends A{
static{
System.out.print("a");
}
public B(){
System.out.print("b");
}
}
public class Hello{
public static void main(String[] ars){
A ab = new B(); //到此处,结果: 1a2b
ab = new B(); //到此处,结果: 1a2b2b
}
}
答:出结果为 1a2b2b;类的 static 代码,作是类(虚拟机加)行的代码,而对于类
,首先行其基类的构,再执行其本的构
50、继承时类的序问题,是选择题,你将会出什么?【基础】
父类:
package test;
public class FatherClass {
public FatherClass() {
System.out.println("FatherClass Create");
}
}
子类:
package test;
import test.FatherClass;
public class ChildClass extends FatherClass {
public ChildClass() {
9 62
System.out.println("ChildClass Create");
}
public static void main(String[] args) {
FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass();
}
}
答:出结果为:
FatherClass Create
FatherClass Create
ChildClass Create
51部类的实现方? 【基础】
答:示例代码如下:
package test;
public class OuterClass {
private class InterClass {
public InterClass() {
System.out.println("InterClass Create");
}
}
public OuterClass() {
InterClass ic = new InterClass();
System.out.println("OuterClass Create");
}
public static void main(String[] args) {
OuterClass oc = new OuterClass();
}
}
出结果为:
InterClass Create
OuterClass Create
52、关于部类: 【基础】
public class OuterClass {
private double d1 = 1.0;
//insert code here
10 62
摘要:

面试题集第1页共62页面试题集共分为以下十部分:一、CoreJava:1—95题1—24页基础及语法:1—61题1—13页异常:62—69题13—15页集合:70—80题15—18页线程:81—90题18—21页IO&Socket:91—95题21—24页二、OOAD&UML:96—101题24—25页三、XML:102—105题26—29页四、SQL:106—109题29—31页五、JDBC&Hibernate:110—121题31—35页六、Web:122—161题35—44页七、EJB&Spring:162—179题44—47页八、数据结构&算法&计算机基础:180—187题47—51页...

展开>> 收起<<
java面试题(题库全).doc

共62页,预览13页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:计算机 价格:5.9玖币 属性:62 页 大小:230KB 格式:DOC 时间:2024-12-11

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 62
客服
关注