UML设计模式笔试题
一、选择题(4分/题共20分)
a)以下程序段执行后的K值为(A)。
intx=20;y=30;
k=(x>y)?y:x;
A.20 B.30 C.10 D.50
1.以下代码中,this只指(A)
classbird{
intx,y;
voidfly(intx,inty){
this.x=x;
this.y=y;
}
}
A.birdB.flyC.bird或flyD.不一定
2.以下变量声明中,正确的是(ACD)
A.internet_nerwork
B.*number
C.Hello
D._sys_path
3.Break语句(A)
A.只中断最内层的循环
B.只中断最外层的循环
C.借助与标号,可以实现任何外层循环中断
D.只中断某一层的循环
4.有一个多线程类myThread,除run方法外还包含一个方法voiddisp()。对如下语句
myThreadmt=newmyThread(D);
mt.start();
mt.disp();
说法正确的是
A.运行完线程体run方法后再运行disp()方法
B.运行完disp()后才能启动线程体run
C.线程体run一定会在disp结束前结束。
D.mt.start()和mt.disp()两条命令,哪条放在前面哪条放在后面运行结果一样。
二、填空题(5分/题共25分)
1.Java程序可分为和两种类型。
2.Java语言的核心类库是包,Java中所有类的基类是该包中的类。
3.线程的五中状态分别是、、、、。
4.Java程序经过编译生成一种叫的二进制代码,它运行于上。
5.JSP中的内置对象有。
三、问答题(6分/题共30分)
1.什么是开-闭原则。
2.画出抽象工厂的类图。
3.使用SQL语句在ORACLE中创建一个用户(Tarring),并给此用户一个角色(Teacher)。
4.请详细写出Struts2程序的的执行过程。
5.MVC模式是个复合模式,请写出你两种你所知道的MVC中使用的模式。
四、程序设计题(第一小题10分,第二小题15分共25分)
1.使用装饰模式写出一个自己的I/O流,完成输入流中的字母从小写到大写的转换。
2.使用Filter写一个可以用于处理请求的组件,类似与Struts2中的核心控制器功能。