(1)什么是实体类?
一、实体类的名字尽量和数据库的表的名字对应相同。
二、实体类应该实现java.io.Serializable接口。
三、实体类应该有个无参的构造方法。
四、实体类应该有个有参(所有的参数)的构造方法。
五、实体类有属性和方法,属性对应数据库中表的字段,方法主要有getter和setter方法。
六、属性一般是private类型,方法为public类型,对于数据库自动生成的ID字段对应的
属性的set方法为private。
七、实体是就是Java中的O/R Mapping映射,即数据库中的一个表映射成对应的一个Java类,其中还有一个映射文件。给定一个较复杂的实体关系(如一对一,一对多,多对多)。
----------------------------------------------------------------------------------------------
2:线程安全的可变字符串类StringBuffer,主要操作是append()和insert()。
3:可变字符串类StringBuilder,不保证同步,用在字符串缓存区被单个线程使用的时候,比StringBuffer快。
三者的使用情况:
a)如果偶尔对简单的字符串常量进行拼接,那么可以使用String,他足够简单而且轻量级。
b)如果需要经常对字符串进行拼接、累加操作,使用StringBuffer或者StringBuilder
c)单线程使用StringBuilder,他比StringBuffer快,多线程中选后者,他是线程安全的。
4:集合类Collection,代表多个对象的集合,分为
a)Queue类:队列类,先进先出的队列
b)List类,列表类,元素有序,且允许重复
c)Set类,集合类,元素可以有序也可以无序,不允许重复。
映射类Map:存储多个键值对。
5:Collections与Collection的区别:前者是对后者集合类进行各种操作的服务类。
a)Collection是个java.util下的接口,它提供了对集合对象进行基本操作的通用接口方法,collection接口在java类库中有很多具体的实现,它的意义是为各种具体的集合提供了最大化的统一操作方式。
b)conllections是个java.util下的实体类,它包含各种有关集合操作的静态方法,提供一系列静态方法实现对各个集合的搜索、排序、线程安全化等操作,就像一个工具类,服务于java的Collection框架。
6:列表类List
a)LinkedList链式访问,以指针相连,适合于在链表中间需要频繁进行插入和删除操作。
b)ArrayList类似数组的形式,按照序号存储,随机访问速度非常快。
c)Vector向量按照各元素序号存储,数组大小可以动态增长,对于大容量数据存储效率较高。
d)Stack堆栈,先进后出的数组。
7:这些类的对比与选择:
如果涉及到堆栈队列等操作,应该考虑List中的stack,queue
对于需要快速插入删除元素,应该使用linkedlist
如果需要快速随机访问元素,应该选用arraylist
如果程序在单线程环境中,选用非同步类
如果在多线程中,选用同步类vector、stack和hashtable以及其子类。