首页 > 代码库 > 答辩5

答辩5

1、集合元素如何添加?如何删除?如何遍历?

添加:add()   put()

删除:remove()

 

遍历:

1、  for(int  i =0;i<list.size();i++){

Object  obj = list.get(i);

}

 

2、  Iterator  it = list.iterator();

while(it.hasNext()){

        Object obj = it.next();

}

 

3、  for(Object  obj  :  list){

}

 

2、List接口实现类ArrayList、Vector、LinkedList的区别?HashMap和Hashtable区别?

ArrayList底层由数组实现。是连续的空间,遍历、尾部追加速度快,中间插入、删除速度慢。

Vector底层也由数组实现。是线程安全的类。

LinkedList是不连续空间,中间插入、删除速度快,遍历速度慢。

 

HashMap允许空键和空值,线程不安全。Hashtable不允许空键和空值,线程安全。

 

3、集合如何进行排序?

Collections.sort(list,Comparator c);

 

4、awt和swing有什么区别?

awt是利用操作系统的风格构建组件,跨平台时显示风格不一致。

swing是单独的组件,跨平台时风格一致。

 

5、GUI常见布局管理器有哪些?

绝对布局,边框布局,流式布局,网格布局

 

6、如何进行事件的添加?

确定事件源,确定监听器(实现监听接口)   注册(建立事件源和监听器的联系)

 

7、流按照输入输出方向分有几种?相对于什么而言?

流按照输入输出方向分有两种,相对于内存而言,当将数据从数据源中读取到内存时,叫读取流。当将数据从内存写入数据源时,叫写入流。

 

8、流按照传输内容分有几种?各自的父类是什么?

流按照传输内容有 字节流、字符流、对象流。但其本质都是字节流。字符流和对象流是在字节流基础上作了一层封装,以便更好对字符和对象进行操作。

 

字节流的父类:InputStream和OutputStream

字符流的父类:Reader和Writer

 

9、操作流时,如果文件不存在会出现什么情况?如果流不关闭会出现什么情况?

操作流时,如果文件不存在,对于读取流而言,会抛出文件未找到异常。对于写入流而言,会创建新文件。如果流使用完成后不关闭,会浪费内存资源。而且对于写入流而言,如果流不关闭也不刷新,有可能写不进数据。

 

10、如何判断一个文件是否存在?如何创建一个目录?如何知道一个目录中有多少文件?

使用File类中exists()判断文件是否存在。

创建新目录:mkdir();

列出目录中的文件:listFiles();

 

11、什么是对象序列化?如何实现对象序列化?

当需要传输对象时,由于对象中数据很庞大,所以需要将对象打散成字节序列,以利传输。这个过程叫做序列化。到达目的地时,又需要将字节序列还原成对象,叫反序列化。

这时,需要序列化的对象必须实现java.io.Serializable接口

 

12、TCP/IP协议分为几层?

TCP/IP分为四层:应用层、传输层、网络层、网络接口层

 

13、什么是端口?常见端口有哪些?

端口是一个应用程序输入输出数据的通道。每个应用程序都会有固定的端口。

常见的端口:Telnet协议:23    ftp:21   smtp:25    http:80

 

14、TCP和UDP的区别是什么?掌握TCP编程流程。

TCP是比较可靠的传输协议,提供三次握手机制,如果信息在传输中丢失或耗损,会要求发送方重新发送,保证数据传输的完整性。

UDP是比较不可靠的传输协议,当信息在传输中丢失或耗损,不会要求发送方重新发送。优点是速度快。

 

15、什么是XML?XML声明是怎样的?XML注释是怎样的?

XML叫做可扩展的标识语言,以标记和子标记的方式描述对象。

声明<?xml  version=”1.0”   encoding=”utf-8”?>

注释<!--     - ->

 

16、一个格式良好的XML有哪些规定?

1、  必须要有声明

2、  有且只有一个根元素

3、  大小写区分

4、  属性必须加引号

5、  标记成对出现

6、  标记要正确嵌套。

7、  空标记要关闭

 

74、格式良好的XML和有效的XML有什么区别?

有效的XML除了满足XML基本规范外,还要满足DTD和Schema定义的元素规则。有效的XML一定是格式良好的XML,但格式良好的XML不一定有效。

 

75、DOM和SAX有什么区别?

DOM是以树状方式的一套API,可以读取可以写入;可以随机访问XML中元素;大型文档占用内存较多。

SAX是一套基于事件方式的API。占用内存小,只能读取不能写入,不能随机访问元素,文档只能遍历一次。

 

76、静态块和实例化块分别在什么时候执行?

静态块在类加载时执行,只执行一次。实例化块在产生对象时执行。每产生一个对象,就执行一次,在super()之后执行。

 

77、什么是一对一、一对多、多对多?

 一对一指的是一条主表记录对应一条从表记录。一对多指的是一条主表记录对应多条从表记录。多对多指的是一条主表记录对应多条从表记录,同时一条从表记录也对应多条主表记录,通过中间表来描述多对多关系。

 

78、数据库完整性有哪些?

  实体完整性:每条记录都要有所区别,不能存在一模一样的记录。通过主键和唯一约束实现

  域完整性:保证每一列的值是有效的。通过默认约束、非空约束和检查约束实现

  引用完整性:保证从表的外键必须引用主表的主键。通过外键约束实现

  用户自定义完整性:用户自定义的规则

答辩5