年前面试软件园一家小公司的22道选择题 大家看看能做出几道(别忘了说说理由):1.关于函数重载,下列说法错误的是?
A.重载函数的函数名必须相同
B.重载函数必须在参数个数或类型上有所不同
C.重载函数的返回值必须相同
D.重载函数的函数体可以有所不同2.关于ServletAPI中forward与redirect,说法正确的是:
A.两者完全等价
B.sendRedirect能够跳转到其他服务器上的资源
C.forward能够减少浏览器与服务器的交互
D.都能隐藏实际的链接地址3.语句:char foo='中',是否正确?(假设源文以GB2312编码存储,并且以javac -encoding GB2312命令编译)
A.正确
B.错误4.下面不属于jsp内置对象的是?
A.config
B.page
C.cookie
D.exception5.关于继承表述错误的是:
A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法.
B.泛化类(超类)可以显式地捕捉那些公共的属性和方法.特殊类(子类)则通过附加属性和方法来进行实现的扩展.
C.继承会破坏封装性,因为会将父类的实现细节暴露给子类.
D.继承本质上是"白盒复用",对父类的修改,不会影响到子类.6.对于JDBC连接,下面那个表述是正确的?
A.连接是由JDBC Driver管理的
B.连接的建立及关闭极其耗资源
C.连接不需要在代码中显示关闭
D.连接是基于RMI创建的
7.关于接口(interface)的描述,正确的是
A.接口(interface)可以继承(extends)接口(interface)
B.接口(interface)中可以声明private的方法
C.接口(interface)中可以声明abstract的方法
D.通过instanceof方法可以判断一个对象是否实现了某个接口(interface)
E.接口(interface)中可以定义非final类型的成员变量8.synchronized关键字做同步,可以使用在:
A.方法上
B.对象上
C.原子类型
9.JDBC的Connection接口包含下面那(几)个方法?
A.createStatement()
B.prepareStatement(String sql)
C.createPrepareStatement(String sql)
D.prepareCall(String sql)10.对于关联端点(Association end)的表述,不正确的选择是:
A.关联端点是关联的一个结构部分,它定义了在关联中类的参与
B.在同一个关联中一个类可以连接到多个端点.
C.在关联中的关联端点有不同的位置而且有名字,并且通常是可互换的.
D.关联端点一旦脱离它的关联独立存在也不再有含义.11.有一个synchronized方法,加入该方法发生递归调用,会导致线程死锁码?
A.会
B.不会
C.有Exception12.如果试用了synchronized关键字,在java内存模型上,多线程如何操作变量?
A.获取锁后从主内存拷贝到工作内存
B.直接在主内存上加锁操作13.要对一个int做多线程的加减操作,下面描述正确的是:
A.可以使用wait/notify代替synchronized
B.JDK5及其后的版本,正常情况下,Atomiclnteger比synchronized快
C.Atomiclnteger只是synchronized的包装
D.Atomiclnteger只是wait/notify的包装14.实现线程安全的对象,有哪些可用的方法?
A.使对象不可更改(lmmutable)
B.对所有临界操作进行同步(synchronizing)
C.利用软件的compareAndSet机制,实现原子操作.
D.利用ThreadLocal对象,避免共享数据.15.JDK1.5后包含Semaphores等的多线程的包是?
A.java.util.concurrent
B.java.lang.concurrent
C.java.lang.multithread
D.java.lang.lock16.ResultSet中记录行的第一列索引为?
A.-1
B.0
C.1
D.以上都不是17.哪种结构,平均来讲,获取任意一个指定值最快?
A.二叉排序树
B.哈希表
C.栈18.以下关于session的说法正确的是?
A.session有超时间隔限制,且间隔不可调整
B.session用于用户状态保持
C.session可以通过cookie保持
D.用户数据存储在session中19.设计JDBC连接池时需要考虑以下哪(几)个方面?
A.并发访问
B.连接池的分配与释放
C.数据库的性能
D.连接池的配置与维护20.进过强制类型转换以后,变量a,b的值分别为()
short a=128
byte b=(byte)a;
A.128 127
B.128 -128
C.128 128
D.编译错误21.下面哪个是Object类所定义的public method?
A.finalize()
B.clone()
C.wait()
D.sleep()22.能否为线程设置一个易读的名字?
A.不能
B.能,Thread.setName()
C.Java自己把名字限制死了,都是Thread=1形式的
A.重载函数的函数名必须相同
B.重载函数必须在参数个数或类型上有所不同
C.重载函数的返回值必须相同
D.重载函数的函数体可以有所不同2.关于ServletAPI中forward与redirect,说法正确的是:
A.两者完全等价
B.sendRedirect能够跳转到其他服务器上的资源
C.forward能够减少浏览器与服务器的交互
D.都能隐藏实际的链接地址3.语句:char foo='中',是否正确?(假设源文以GB2312编码存储,并且以javac -encoding GB2312命令编译)
A.正确
B.错误4.下面不属于jsp内置对象的是?
A.config
B.page
C.cookie
D.exception5.关于继承表述错误的是:
A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法.
B.泛化类(超类)可以显式地捕捉那些公共的属性和方法.特殊类(子类)则通过附加属性和方法来进行实现的扩展.
C.继承会破坏封装性,因为会将父类的实现细节暴露给子类.
D.继承本质上是"白盒复用",对父类的修改,不会影响到子类.6.对于JDBC连接,下面那个表述是正确的?
A.连接是由JDBC Driver管理的
B.连接的建立及关闭极其耗资源
C.连接不需要在代码中显示关闭
D.连接是基于RMI创建的
7.关于接口(interface)的描述,正确的是
A.接口(interface)可以继承(extends)接口(interface)
B.接口(interface)中可以声明private的方法
C.接口(interface)中可以声明abstract的方法
D.通过instanceof方法可以判断一个对象是否实现了某个接口(interface)
E.接口(interface)中可以定义非final类型的成员变量8.synchronized关键字做同步,可以使用在:
A.方法上
B.对象上
C.原子类型
9.JDBC的Connection接口包含下面那(几)个方法?
A.createStatement()
B.prepareStatement(String sql)
C.createPrepareStatement(String sql)
D.prepareCall(String sql)10.对于关联端点(Association end)的表述,不正确的选择是:
A.关联端点是关联的一个结构部分,它定义了在关联中类的参与
B.在同一个关联中一个类可以连接到多个端点.
C.在关联中的关联端点有不同的位置而且有名字,并且通常是可互换的.
D.关联端点一旦脱离它的关联独立存在也不再有含义.11.有一个synchronized方法,加入该方法发生递归调用,会导致线程死锁码?
A.会
B.不会
C.有Exception12.如果试用了synchronized关键字,在java内存模型上,多线程如何操作变量?
A.获取锁后从主内存拷贝到工作内存
B.直接在主内存上加锁操作13.要对一个int做多线程的加减操作,下面描述正确的是:
A.可以使用wait/notify代替synchronized
B.JDK5及其后的版本,正常情况下,Atomiclnteger比synchronized快
C.Atomiclnteger只是synchronized的包装
D.Atomiclnteger只是wait/notify的包装14.实现线程安全的对象,有哪些可用的方法?
A.使对象不可更改(lmmutable)
B.对所有临界操作进行同步(synchronizing)
C.利用软件的compareAndSet机制,实现原子操作.
D.利用ThreadLocal对象,避免共享数据.15.JDK1.5后包含Semaphores等的多线程的包是?
A.java.util.concurrent
B.java.lang.concurrent
C.java.lang.multithread
D.java.lang.lock16.ResultSet中记录行的第一列索引为?
A.-1
B.0
C.1
D.以上都不是17.哪种结构,平均来讲,获取任意一个指定值最快?
A.二叉排序树
B.哈希表
C.栈18.以下关于session的说法正确的是?
A.session有超时间隔限制,且间隔不可调整
B.session用于用户状态保持
C.session可以通过cookie保持
D.用户数据存储在session中19.设计JDBC连接池时需要考虑以下哪(几)个方面?
A.并发访问
B.连接池的分配与释放
C.数据库的性能
D.连接池的配置与维护20.进过强制类型转换以后,变量a,b的值分别为()
short a=128
byte b=(byte)a;
A.128 127
B.128 -128
C.128 128
D.编译错误21.下面哪个是Object类所定义的public method?
A.finalize()
B.clone()
C.wait()
D.sleep()22.能否为线程设置一个易读的名字?
A.不能
B.能,Thread.setName()
C.Java自己把名字限制死了,都是Thread=1形式的
符合重载条件的重载方法返回值、返回值类型可以不同
2.C
3.A
4.C
jsp九种内置对象:request, reponse, out, session, application, config, pagecontext, page, exception.
5.D
6.A/B
7.ACDE
8.AB
9.ABD
10.Don't know
11.B
12.A
13.Don't know
14.BCD
15.A
16.C
17.B
18.B
19.ABD
20.B
21.C
22.B欢迎指正!
有些参数的个数,还有顺序,类型...
aa(int i,String str)与aa(String str,int i)
这个应该归结为什么啊?
6-10 ab/acd/ab/abd/x
11-15 b/a/a/abcd/x
16-20 c/b/bd/abcd/b
21-22 a/b
A.重载函数的函数名必须相同
B.重载函数必须在参数个数或类型上有所不同
C.重载函数的返回值必须相同
D.重载函数的函数体可以有所不同 选【C】2.关于ServletAPI中forward与redirect,说法正确的是:
A.两者完全等价
B.sendRedirect能够跳转到其他服务器上的资源
C.forward能够减少浏览器与服务器的交互
D.都能隐藏实际的链接地址
选【C】前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址,他是不会改变Request的值,如果你需要在下一个页面中能从中获 取新的信息的话,你可以Request.setAttribute()来放置一些标志,这样从下一个页面中获取;后者则是完全的跳转,浏览器将会得到跳转 的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。3.语句:char foo='中',是否正确?(假设源文以GB2312编码存储,并且以javac -encoding GB2312命令编译)
A.正确
B.错误 选【A】4.下面不属于jsp内置对象的是?
A.config
B.page
C.cookie
D.exception 选【C】5.关于继承表述错误的是:
A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法.
B.泛化类(超类)可以显式地捕捉那些公共的属性和方法.特殊类(子类)则通过附加属性和方法来进行实现的扩展.
C.继承会破坏封装性,因为会将父类的实现细节暴露给子类.
D.继承本质上是"白盒复用",对父类的修改,不会影响到子类. 选【D】关于C答案可以看Effective Java6.对于JDBC连接,下面那个表述是正确的?
A.连接是由JDBC Driver管理的
B.连接的建立及关闭极其耗资源
C.连接不需要在代码中显示关闭
D.连接是基于RMI创建的 选【B】关于A答案好像描述的不清楚,貌似叫驱动管理器(Driver Manager)
7.关于接口(interface)的描述,正确的是
A.接口(interface)可以继承(extends)接口(interface)
B.接口(interface)中可以声明private的方法
C.接口(interface)中可以声明abstract的方法
D.通过instanceof方法可以判断一个对象是否实现了某个接口(interface)
E.接口(interface)中可以定义非final类型的成员变量 选【A、C、D、E】B没什么好说,关于E答案大家可以试试,可以定义非final变量,但是必须初始化。8.synchronized关键字做同步,可以使用在:
A.方法上
B.对象上
C.原子类型 选【A、B】请高人解释C答案
9.JDBC的Connection接口包含下面那(几)个方法?
A.createStatement()
B.prepareStatement(String sql)
C.createPrepareStatement(String sql)
D.prepareCall(String sql) 选【A、B、D】10.对于关联端点(Association end)的表述,不正确的选择是:
A.关联端点是关联的一个结构部分,它定义了在关联中类的参与
B.在同一个关联中一个类可以连接到多个端点.
C.在关联中的关联端点有不同的位置而且有名字,并且通常是可互换的.
D.关联端点一旦脱离它的关联独立存在也不再有含义. 呼唤高人11.有一个synchronized方法,加入该方法发生递归调用,会导致线程死锁码?
A.会
B.不会
C.有Exception 呼唤高人12.如果试用了synchronized关键字,在java内存模型上,多线程如何操作变量?
A.获取锁后从主内存拷贝到工作内存
B.直接在主内存上加锁操作 选【B】13.要对一个int做多线程的加减操作,下面描述正确的是:
A.可以使用wait/notify代替synchronized
B.JDK5及其后的版本,正常情况下,Atomiclnteger比synchronized快
C.Atomiclnteger只是synchronized的包装
D.Atomiclnteger只是wait/notify的包装 等待高手解释14.实现线程安全的对象,有哪些可用的方法?
A.使对象不可更改(lmmutable)
B.对所有临界操作进行同步(synchronizing)
C.利用软件的compareAndSet机制,实现原子操作.
D.利用ThreadLocal对象,避免共享数据. 选【A、B、C、D】15.JDK1.5后包含Semaphores等的多线程的包是?
A.java.util.concurrent
B.java.lang.concurrent
C.java.lang.multithread
D.java.lang.lock 选【A】16.ResultSet中记录行的第一列索引为?
A.-1
B.0
C.1
D.以上都不是 选【C】17.哪种结构,平均来讲,获取任意一个指定值最快?
A.二叉排序树
B.哈希表
C.栈 选【B】18.以下关于session的说法正确的是?
A.session有超时间隔限制,且间隔不可调整
B.session用于用户状态保持
C.session可以通过cookie保持
D.用户数据存储在session中 选【B、D】19.设计JDBC连接池时需要考虑以下哪(几)个方面?
A.并发访问
B.连接池的分配与释放
C.数据库的性能
D.连接池的配置与维护 选【A、B、D】20.进过强制类型转换以后,变量a,b的值分别为()
short a=128
byte b=(byte)a;
A.128 127
B.128 -128
C.128 128
D.编译错误 选好像没答案,应该是128和-12721.下面哪个是Object类所定义的public method?
A.finalize()
B.clone()
C.wait()
D.sleep() 选【C】22.能否为线程设置一个易读的名字?
A.不能
B.能,Thread.setName()
C.Java自己把名字限制死了,都是Thread=1形式的 选【B】
6.B 7.ABCD.8.A 9.ABD 10.C 11.B 12.A 13.A 14.Dont' know 15.A 16.C 17.B 18.B 19.ABCD 20.B 21.C 22.B
解释:
10.association(关联)
如果几个类元的实例之间有联系,那么这几个类元之间的语义关系即关联。
见association class,association end,association generation,binary association,n-ary association。
语义
关联是两个或多个特定类元之间的关系,它描述了这些类元的实例的联系。参与其中的类元在关联内的位置有序。在一个关联中同一个类可以出现在多个位置上。关联的每个实例(链接)是引用对象的有序表,关联的外延即这种链接的一个集合。在链接集合中给定的对象可以出现多次,或者在关联的定义允许的情况下可以在同一个链中(在不同的位置)出现多次。关联将一个系统组织在一起,如果没有关联,那只有一个无连接类的集合。本人技术有限,
欢迎大家指正!!!谢谢.
clone()方法: 创建并返回此对象的一个副本。
equals(Object obj)方法: 指示某个其他对象是否与此对象“相等”。
finalize()方法: 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。
getClass()方法: 返回一个对象的运行时类。
hashCode()方法: 返回该对象的哈希值。
notify()方法: 唤醒在此对象监视器上等待的单个线程。
notifyAll()方法: 唤醒在此对象监视器上等待的所有线程。
toString()方法: 返回该对象的字符串表示。
wait()方法: 导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
wait(long timeout)方法: 导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过指定的时间量。
wait(long timeout, int nanos)方法: 导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者其他某个线程中断当前线程,或者已超过某个实际时间量。