2011JAVA面试题汇总(3)

2019-08-29 19:11

JAVA 面试题汇总

JAVA基础

独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。 29) 垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?

对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是\可达的\,哪些对象是\不可达的\。当GC确定一些对象为\不可达\时,GC就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行。

30) java中会存在内存泄漏吗,请简单描述

会。如:int i,i2; return (i-i2); //when i为足够大的正数,i2为足够大的负数。结果会造成溢位,导致错误。

Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。

31) java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,他们分别是哪些

类? 字节流,字符流。字节流继承于InputStream、 OutputStream,字符流继承于InputStreamReader 、OutputStreamWriter。 32) 文件和目录(I/O)操作

1、如何列出某个目录下的所有文件,如何列出某个目录下的所有子目录: public void listFile(String rp) { File file=new File(rp); File list[]=file.listFiles(); for(int i=0;i

new ListFiles().listFile(list[i].toString()); } else {

listFileStr+=list[i].getAbsolutePath()+\

~ 6 ~

JAVA 面试题汇总

JAVA基础

System.out.println(list[i].getAbsolutePath()); } }

2、判断一个文件或目录是否存在:

File file=new File(“c:\\aa.txt”);if(file.exists()){System.out.print(“存在”)}; 3、如何读写文件

读:BufferdReader br = new BufferdReader(new FileReader(“c:\\aa.txt”));br.readLine(); 写:BufferdWriter bw = new BufferdWriter (new FileWriter(“c:\\aa.txt”));bw.write(“Hello”); 33) 什么是java序列化?如何实现java序列化?

序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。

序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个 ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。 34) JAVA事件委托机制的概念

java 事件委托机制的概念:一个源产生一个事件并将它送到一个或多个监听器那里。在这种方案中,监听器简单的等待,直到它收到一个事件。一旦事件被接受,监听器将处理这个事件,然后返回。

35) 谈谈你对Swing的MVC模式的理解?

Swing号称是完全按照MVC的思路来进行设计的。在设计开始前,Swing的希望能够达到的目标就包括:

模型驱动(Model-Driven)的编程方式。提供一套单一的API,但是能够支持多种视感(look-and-feel),为用户提供不同的界面。严格的说,Swing中的MVC实际上是MVC的一个变体:M-VC。 Swing中只显示的定义了Model接口,而在一个UI对象中集成了视图和控制器的部分机制。View和Control比较松散的交叉组合在一起,而更多的控制逻辑是在事件监听者部分引入的。但是,这并没有妨碍在Swing中体现MVC的精髓。事实上,在Swing的开发初期,Swing确实是按照标准的MVC模式来设计的,但是很快的问题就出现了:View和Controller实际上是紧密耦合的,很难作出一个能够适应不同View的一般化的Controller来,而且,一般也

~ 7 ~

JAVA 面试题汇总

JAVA基础

没有很大的必要。

36) MVC结构在JTable中怎样实现的,这种结构有什么好处?

在JTable中不存储它的单元数据,它的所有实例把它们的单元值交给实现了TableModel接口的对象来维护和管理,所以在MVC结构中,Jtable的表格主要体现了一个V的作用,其表格将数据变化体现出来,而数据模型则体现了M的作用,封装数据和业务逻辑。

在这种MVC结构中,表示层和逻辑层分离,各部分可相互独立进行开发,便于开发和维护,提高了开发效率。

~ 8 ~

JAVA 面试题汇总

类与继承

二、 类与继承

37) 说出一些常用的类,包,接口,请各举5个

常用的类:String,BufferedReader,Integer,ArrayList,Vector 常用的包:java.lang ,java.awt ,java.io ,java.util ,java.sql 常用的接口:Collection,List,Map,Serializable,Runnable 38) 接口有什么优点? 答:接口有以下优点:

1、接口只是一个框架而没有实现,因此在接口定义时不需要考虑接口中的方法如何实现。 2、利用接口可达到实现多继承的目地。

3、可以在不暴露对象的类的前提下,暴露对象的编程接口。 4、不用强迫类关系在无关类中截获相似处(采用适配器就可以了)。 5、声明想执行的一个或多个方法。 39) 静态变量和实例变量的区别

静态变量也称作类变量,由static修饰,如:static int ss; ss就是静态变量,它只能通过类来访问。

实例变量没有static修饰符,它只能通过实例对象来访问。

同一类的不同的实例对象有自己的实例变量,但是它们共享同一个静态变量。当一个实例对象修改了它的实例变量时,不会影响其他的实例对象。如果一个实例对象修改了静态变量,则会影响其他的对象实例。

40) 是否可以从一个static方法内部发出对非static方法的调用? 不可以,如果其中包含对象的method(),不能保证对象初始化. 41) java 有几种修饰符?分别用来修饰什么?

答:(注:修饰符是影响类、变量及成员方法的生存空间和可访问性的关键字) 修饰符 abstract static public protected private private

类 成员方法 成员变量 局部变量 √ - √ - - -

- - - - -

√ √ √ √ √

√ √ √ √ √

~ 9 ~

JAVA 面试题汇总

类与继承

protected - √ √ √ - √

√ - - √ √

- - - - -

synchronized - native volatile final

- - √

transient - - √

42) 作用域public,private,protected,以及不写时的区别 区别如下:

作用域 当前类 同包 子孙类 不同包 public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时默认为friendly 43) final, finally, finalize的区别 1.final :

用于声明属性,方法和类,分别表示属性不可变(为常量),方法不可覆盖(不可重写),类不可继承。 2.finally:

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

是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 44) 内部类可以引用他包含类的成员吗?有没有什么限制? 根据内部类是否为static分为两种讨论:

1.静态内部类可以有静态和非静态的成员,但它们只能访问包含类的静态成员

2.非静态内部类不能有静态成员,它可以访问包含类的任何成员,无论它们有什么访问属性。它还可以访问包含类下任何静态内部类的静态成员

45) 匿名内部类是否可以继承其它类?是否可以实现接口?

可以继承其他类,也可以实现接口。

~ 10 ~


2011JAVA面试题汇总(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:母婴护理师(高级)课程测试试卷一

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: