欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    程序员应聘摸底考试题.doc

    • 资源ID:780245       资源大小:105KB        全文页数:15页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    程序员应聘摸底考试题.doc

    百川同达百川同达 Java 程序员应聘摸底考试题程序员应聘摸底考试题一、选择题。(2*11 分) 1. class ExSuper String name;String nick_name;public ExSuper(String s,String t)name = s;nick_name = t;public String toString()return name; public class Example extends ExSuperpublic Example(String s,String t)super(s,t);public String toString()return name + “a.k.a“ + nick_name;public static void main(String args)ExSuper a = new ExSuper(“First“,“1st“);ExSuper b = new Example(“Second“,“2nd“);System.out.println(“a is “ + a.toString();System.out.println(“b is “ + b.toString(); A. 编译时会出现异常。 B. 运行结果为:a is Firstb is second C. 运行结果为:a is Firstb is Secong a.k.a 2nd D. 运行结果为:a is First a.k.a 1ndb is Second a.k.a 2nd2. abstract class MineBaseabstract void amethod();static int i; public class Mine extends MineBasepublic static void main(String argv)int ar = new int5;for (int i = 0; i 标签中 scope 的范围由小到大是 A page session request application B. application page request session C. application session request page D. page request session application6. 要让用户共享一个 JavaBean 的对象则该对象的范围应改设置为: A. session B. page C. application D. request7. 关于自定义标签的使用不正确的是:A 必须在 JSP 页面中使用 B. 必须经过 web.xml 影射C. 必须存在 tld 文件 D. 自定义标签的类必须是 public 的8. 关于外键约束不正确的是: A外键约束与唯一约束不能同时存在与一个字段 B子表外键列的值必须在主表参照列表值的范围内,或者为空 C主表外键值被子表参照时,主表记录不允许被删除 D外键参照的是主表的主键或者唯一键9. 下面的类,正确的描述是_public class Example public static void main(String args)static int x = new int15;System.out.println(x5); A. 编译错误 B.编译正确,执行错误 C. 输出 0 D. 输出是 null10. 关于 Oracle 中存储过程与函数错误的是:A函数必须定义返回类型 B. 存储过程不能定义返回类型C函数可以使用 out 类型参数 D. 存储过程可以用 in out 类型参数11. 关于 Servlet 错误的是:A . 在 MVC 模式中 Servlet 一般用作控制器 B. Tomcat5.0 中 Servlet 必须通过 web.xml 影射访问 C. Servlet 中可以直接使用内置对象 out 调用 out.println() 进行输出,而不声明 D. Servlet 中可以跳转到另一个 Servlet。二、 简答题(40 分,答案写在其他白纸上)1.Vector 与 ArrayList 有什么区别,在 java.util 包中有哪两个类有类似区别?(3 分)ArrayList 类ArrayList 实现了可变大小的数组。它允许所有元素,包括 null。ArrayList 没有同步。size,isEmpty,get,set 方法运行时间为常数。但是 add 方法开销为分摊的常数,添加n 个元素需要 O(n)的时间。其他的方法运行时间为线性。每个 ArrayList 实例都有一个容量(Capacity),即用于存储元素的数组的大小。这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。当需要插入大量元素时,在插入前可以调用 ensureCapacity 方法来增加 ArrayList 的容量以提高插入效率。和 LinkedList 一样,ArrayList 也是非同步的(unsynchronized)。Vector 类Vector 非常类似 ArrayList,但是 Vector 是同步的。由 Vector 创建的 Iterator,虽然和 ArrayList 创建的 Iterator 是同一接口,但是,因为 Vector 是同步的,当一个 Iterator被创建而且正在被使用,另一个线程改变了 Vector 的状态(例如,添加或删除了一些元素),这时调用 Iterator 的方法时将抛出 ConcurrentModificationException,因此必须捕获该异常。Hashtable HashMap 类似2.response.sendRedirect()与都能跳转,它们有什么区别? (3 分) 重定向 跳转3. 与 都能包含有什么区别? (3 分)伪指令会导致 Web 浏览器高速缓存所有页面。总是会检查所含文件中的变化。 4.存在学生表,课程表,分数表三个表:Create table student(studentid number(10) prinary key,name varchar2(30),depart varchar2(20);Create table lesson(lessonid number(10) primary key, lessonname varchar2(20);Create table score(studentid number(10) foreign key references student(studentid),Lessonid number(10) foreign key references student(studentid)Score number(3); 写一个 SQL 语句求出考试科目名称为“java 语言”的科目中分数为前 10 名的学生 id,姓 名,专业。 select top 3 stu.studentid,stu.name,l.lessonname from score s inner join lesson l on s.Lessonid=l.lessonid inner join student stu on s.studentid=stu.studentid where l.lessonname='java' order by s.Score desc; 5、Struts 框架应用了哪些设计模式? MVC 工厂 单例 是三个最明显的设计模式6、请阐述 Spring IOC 思想(4 分)一、什么是一、什么是 IOCIoC 就是 Inversion of Control,控制反转。在 Java 开发中,IoC 意味着将你设计好的类交给系统去控制,而不是在你的类内部控制。这称为控制反转。下面我们以几个例子来说明什么是 IoC假设我们要设计一个 Girl 和一个 Boy 类,其中 Girl 有 kiss 方法,即 Girl 想要Kiss 一个 Boy。那么,我们的问题是,Girl 如何能够认识这个 Boy?在我们中国,常见的与 GG 的认识方式有以下几种 青梅竹马; 亲友介绍; 父母包办那么哪一种才是最好呢?青梅竹马青梅竹马:Girl 从小就知道自己的 Boy。public class Girl void kiss()Boy boy = new Boy();然而从开始就创建的 Boy 缺点就是无法在更换。并且要负责 Boy 的整个生命周期。如果我们的 Girl 想要换一个怎么办?(笔者严重不支持 Girl 经常更换 Boy)亲友介绍亲友介绍:由中间人负责提供 Boy 来见面public class Girl void kiss()Boy boy = BoyFactory.createBoy(); 亲友介绍,固然是好。如果不满意,尽管另外换一个好了。但是,亲友 BoyFactory经常是以 Singleton 的形式出现,不然就是,存在于 Globals,无处不在,无处不能。实在是太繁琐了一点,不够灵活。我为什么一定要这个亲友掺和进来呢?为什么一定要付给她介绍费呢?万一最好的朋友爱上了我的男朋友呢?父母包办父母包办:一切交给父母,自己不用费吹灰之力,只需要等着 Kiss 就好了。publicpublic class Girl void kiss(Boy boy)/ kiss boy boy.kiss();Well,这是对 Girl 最好的方法,只要想办法贿赂了 Girl 的父母,并把 Boy 交给他。那么我们就可以轻松的和 Girl 来 Kiss 了。看来几千年传统的父母之命还真是有用哦。至少 Boy 和 Girl 不用自己瞎忙乎了。这就是 IOC,将对象的创建和获取提取到外部。由外部容器提供需要的组件。我们知道好莱坞原则好莱坞原则:“Do not call us, we will call you.” 意思就是,You, girlie, do not call the boy. We will feed you a boy。我们还应该知道依赖倒转原则依赖倒转原则即 Dependence Inversion Princinple,DIP。Eric Gamma 说,要面向抽象编程。面向接口编程是面向对象的核心。组件应该分为两部分,即Service, 所提供功能的声明Implementation, Service 的实现好处是:多实现可以任意切换,防止 “everything depends on everything” 问题即具体依赖于具体。所以,我们的 Boy 应该是实现 Kissable 接口。这样一旦 Girl 不想 kiss 可恶的Boy 的话,还可以 kiss 可爱的 kitten 和慈祥的 grandmother。二、二、IOC 的的 typeIoC 的 Type 指的是 Girl 得到 Boy 的几种不同方式。我们逐一来说明。IOC type 0:不用 IOCpublicpublic classclass Girl implementsimplements Servicable privateprivate Kissable kissable;publicpublic Girl() kissable = newnew Boy();publicpublic voidvoid kissYourKissable() kissable.kiss();Girl 自己建立自己的 Boy,很难更换,很难共享给别人,只能单独使用,并负责完全的生命周期。IOC type 1,先看代码:publicpublic classclass Girl implementsimplements Servicable Kissable kissable;publicpublic voidvoid service(ServiceManager mgr) kissable = (Kissable) mgr.lookup(“kissable”);publicpublic voidvoid kissYourKissable() kissable.kiss();这种情况出现于 Avalon Framework。一个组件实现了 Servicable 接口,就必须实现 service 方法,并传入一个 ServiceManager。其中会含有需要的其它组件。只需要在 service 方法中初始化需要的 Boy。另外,J2EE 中从 Context 取得对象也属于 type 1。它依赖于配置文件 />IOC type 2:publicpublic classclass Girl privateprivate Kissable kissable;publicpublic voidvoid setKissable(Kissable kissable) thisthis.kissable = kissable;publicpublic voidvoid kissYourKissable() kissable.kiss();Type 2 出现于 Spring Framework,是通过 JavaBean 的 set 方法来将需要的Boy 传递给 Girl。它必须依赖于配置文件。name=“kissable“>bean=“boy“/>IOC type 3publicpublic classclass Girl privateprivate Kissable kissable;publicpublic Girl(Kissable kissable) thisthis.kissable = kissable;publicpublic voidvoid kissYourKissable() kissable.kiss();这就是 PicoContainer 的组件 。通过构造函数传递 Boy 给 Girl。PicoContainer container = newnew DefaultPicoContainer();container.registerComponentImplementation(Boy.classclass);container.registerComponentImplementation(Girl.classclass);Girl girl = (Girl) container.getComponentInstance(Girl.classclass);girl.kissYourKissable();关于 PicoContainer,作者后续文章会详细介绍。 作者语:作者语: Well,以上的这些理论部分有些已经有了新的定义了。过些天我会再写一些文章具体说明。比如,原来的三种 type 结构现在已经重新定义为依赖注射的许多层次。IoC 很年轻,还在发展。伴随着 IOC 的发展,AOP,COP,SOP 等等都在不断的发展。作为程序员,随时关注着新的思想的发展是一件很轻松愉快的事情。有没有人愿意和我一起探讨学习共同进步呀!参考资料参考资料1 本文主要插图及文字来源于 ThoughtWorks 公司的 Jon Tirsén 与 Aslak Hellesøy(PicoContainer 的两位开发者),2003 年在 Java Polis 的演讲 PPT。有删改。7、阐述 Hibernate 的延迟加载机制?Hibernate 和延迟加载Hibernate 对象关系映射提供了两种对象初始化模式:延迟加载和非延迟加载。非延迟加载在加载时获取对象本身以及它关联的所有对象。这可能导致在获取一个实例时,执行成百上千的 select 语句。当使用双向关联时,这个问题被放大,常常出现初始化请求时,整个数据库都被载入。显然检查每个对象的关系,并手工删除他们会费点事,但最终我们可能会因此丢失使用 ORM 工具的优势。一个明细的解决方式是使用 hibernate 提供的延迟载入机制。这种初始化策略在类成员被访问时只载入它的一个对象的一对多和多对多关系。对开发人员来说,这种方式是透明的,并且只有最少数量的请求发生,这样就获得了最佳的性能。这种技术的一个缺点是延迟载入要求当对象还在使用中时,Hibernate 的 Session 必须保持打开状态。当尝试通过 DAO 模式抽象持久层时,这会引起一个重要问题。为了充分地抽象持久层,所有的数据库逻辑,包括打开、关闭 Session 都不能在应用层出现。最常见的是,这些逻辑隐藏在DAO 的实现类中。快速和差一些的方案是:避免采用 DAO 模式,在应用层中包含数据连接的逻辑。这在小应用中是可行的,但在大系统中,这会是一个设计缺陷,它损害了应用的扩展性。8、设置本用户每小时第 15,30,59 分钟都将目录aint/info/log 及目录下所有文件大小记 录到日志文件/tmp/checkdir.log 中。 9、查看所有 oracle 用户的进程有哪些? 10、列出目录/usr/lib 下所有文件,包括子目录及子目录下文件 11、查找目录/var/adm 下是否有文件 messages, 如果有的话同时列出其文件大小,日期等 属性。 三、编程题 1.一个字符串中可能包含 a-z 中的多个字符,字符也可能重复,例如:String data = “ aabcdexmkduyruieiopxzkkkasdfjxjdsds”; 写一个程序,对于给定一个这样的字符串 求出字符串中出现次数最多的那个字母以及出现 次数(若次数最多的字母有多个,则全部求出) 。 2.输入一个正整数,若该数能用几个连续正整数之和表示,则输出所有可能的正整数序 列。 3.有两个字符串 str1 和 str2,写一个函数实现在 str1 中查找 Str2 的初始位置。要求不区 分大小写。 四、编程题 1、公司工资查询系统正待开发,现有状况是:使用 OurSQL 数据库(假想) ,已建立了数 据库 employee_system,其中的一个表 salary_table 的结构如下:SSN char(10)EM_name char(10)Age int(4)Em_salary float(8)1Wangli323500.80数据库的驱动也已经装入,它的 Jdbc 驱动程序类为 gov.edu.oo.oursql.Driver,创建连接的字 符串为“jdbc:oursql:/”+serverName+”/”+databaseName,数据服务器 OurSql 驻留在本地。要求用 Java 语言编写一个应用程序,能够实现如下功能: (1)使用 JDBCAPI 建立到 ourSQL 数据库系统的连接 (2)执行查询操作,打印出工资大于 2000 元的员工的名字和工资,并按工资多少排序。(3)给年龄大于 20 岁的员工加薪,每人加 200 元。 五,智力题(10 分) 1 有一位警长,抓了三个逃犯。现警长决定给他们一次机会。他拿出 3 顶黑帽子,两顶 白帽子,然后往这三个逃犯头上每人戴了一顶帽子,每个逃犯只能看到另外两个逃犯 帽子的颜色,不能看到自己帽子的颜色,而且不能进行通讯,不能进行讨论,只能靠 自己的推理推出来,如果猜出来了,放一条生路,否则处死。 警长先问第一逃犯,结果第一逃犯猜错了,被杀掉了。 警长问第二个逃犯,结果还是猜错了,同样被杀掉了。 警长再问第三个逃犯,结果第三个逃犯猜对了。 说明一下,每个逃犯在回答问题时,其他逃犯是听不到的。为什么第三个一定能猜中,请你给出解释。 穷举所有情况,再进行分析

    注意事项

    本文(程序员应聘摸底考试题.doc)为本站会员(帮****)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开