计算机基础知识面试.docx
- 文档编号:7864289
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:11
- 大小:21.03KB
计算机基础知识面试.docx
《计算机基础知识面试.docx》由会员分享,可在线阅读,更多相关《计算机基础知识面试.docx(11页珍藏版)》请在冰豆网上搜索。
计算机基础知识面试
1、写出你知道的排序算法名称及其复杂度(至少三种)
答:
1)冒泡排序(简单)
2)插入排序(最复杂)
3)选择排序(较复杂)
2、给出TCP,IP,HTTP,FTP之间的层次关系(参照网络七层协议划分)
答:
XX“网络七层协议”
3、设有下列数据表
职工号
姓名
车间
车间主任姓名
职工工资
如何将该数据表的对应关系规范化到第三范式
答:
车间编号车间名称车间主任名称
职工号姓名职工工资所属车间编号
4、设有学生表A和考试成绩表B,结构如下:
AA表主键(a)
字段名
含义
a
学号
b
姓名
c
性别,0表示男1表示女
d
年龄
BB表主键(a,b,c)
字段名
含义
a
学号
b
课程号
c
考试时间(yyyymmdd,例如:
20041201)
d
考试成绩(百分制,60分及格)
a)写一个sql语句,列出”200411”号课程考试成绩不及格的学生的学号、姓名、年龄
Selecta,b,dfromAwhereain(selectafromBwhereb=’200411’andd<60)
b)写一个sql语句,列出考试成绩不及格的课程门数大于6门的学生的学号、姓名、年龄
Selecta,b,dfromAwhereain(Selectafrombwhered<60groupbyahavingcount(*)>6)
c)写一个sql语句,列出考试成绩尚未及格的课程门数大于6门的女生的学号、姓名、年龄
Selecta,b,dfromAwhereain(Selectafrombwhered<60groupbyahavingcount(*)>6)andc=1
第三部分:
实际开发经验
一、程序设计部分(5,6题任选一题即可)
[使用任意一种语言均可]
5、编写一个表达式,计算月收入为x元时的个人所得税,假定x<=5000。
所得累进税率为5%,累进点为1000元,1500元和3000元
如:
x=1200时,税为(1200-1000)*5%
x=2000时,税为(2000-1000)*5%+(2000-1500)*5%
x=5000时,税为(5000-1000)*5%+(5000-1500)*5%+(5000-3000)*5%
特别注意:
要求写的是一句的表达式,而不是一段程序,其中不得有分行符,尽量短
x>3000?
(x-1000)*5%+(x-1500)*5%+(x-3000)*5%:
x>1500?
(x-1000)*5%+(x-1500)*5%:
(x-1000)*5%
6、编写字符串查找函数
函数有三个参数,一个是源字符串,一个是目标子串,一个是查找方向(自右向左或自左向右),函数实现按照查找方向在源字符串中查找目标子串,并返回查找到的位置。
查不到返回-1
答:
publicintfindStr(Stringsource,Stringtarget,inttype){
intposition=-1;
if(type==0){//自左向右
position=source.indexOf(target);
}else{//自右向左
position=source.lastIndexOf(target);
}
returnposition;
}
二、开发工具部分
7、Java/J2ee基础知识
a)Java有哪些基本数据类型,String是不是基本数据类型,他们有何区别?
答:
byteshortintlongfloatdoublecharboolean,值类型
String不是基本数据类型,引用类型
b)如何将数值型字符转换为数字(Integer、Double),如何将数字转换为字符?
答:
Integer.parseIntDouble.parseDouble
数字+””
(char)数字
c)float型floatf=3.4是否正确?
答:
不正确,默认小数是double类型,应为3.4f
d)请解释抽象类和接口的区别?
答:
抽象类中可以有常量、变量、构造、正常方法和抽象方法,可以被继承,其子类如果不重写,子类也是抽象类;
接口中可以有常量和抽象方法,可以被实现,子类必须重写其抽象方法
抽象类可以继承类也可以实现接口;接口只能继承接口
e)请解释String和StringBuffer的区别?
答:
String固定字符串
StringBuffer是可变字符串
f)请解释forward和redirect的区别?
答:
g)请解释jsp中动态include和静态include的区别?
答:
jsp:
include动态include,包含的是结果
@include静态include,包含的是代码
h)请解释ArrayList与Vector的区别,HashMap与Hashtable的区别及Hashtable的原理
答:
i)请解释关于j2ee的名词:
JNDI、JMS、JTA、RMI
答:
j)什么是web容器?
答:
tomcat、weblogic、jboss、jerrt
k)什么是WbService?
答:
8、java编程
写出下列程序的运行结果:
publicclassX{
privatestaticinta;
publicstaticvoidmain(String[]args){
modify(a);
System.out.println(a);
}
publicstaticvoidmodify(inta){
a++;
}
}
答:
输出0
四、主观题
1、你关心IT业界尤其是软件行业的各种最新动态吗?
请简单举出IT业界最近比较热门的两三个话题
2、你最喜欢自己的哪些优点?
对你个人成长起了多大的积极作用?
3、你如何定义成功?
你觉得什么样的企业能给你的成功创造更多的机会?
1.写出配置java环境变量的路径。
path="%JAVA_HOME%+jdk安装路径";
2.写出6个常用的html标签。
head、style、table、h1、br、center、marquee、strong
3.jsp有哪些内置对象?
作用是什么?
request用户端请求,此请求会包含来自GET/POST请求的参数
response网页传回用户端的回应
page指向当前JSP页面本身,有点像类中的this指针
pageContext网页的属性是在这里管理
session与请求有关的会话期
application应用程序对象,servlet正在执行的内容
out用来传送回应的输出
config配置对象,servlet的架构部件
exception例外对象
4.jsp有哪些动作?
作用分别是什么?
jsp:
include:
在页面被请求的时候引入一个文件
jsp:
useBean:
寻找或者实例化一个JavaBean
jsp:
setProperty:
设置JavaBean的属性
jsp:
getProperty:
获取JavaBean的属性
jsp:
forword:
把请求转到一个新的页面
jsp:
plugin:
根据浏览器类型为Java插件生成Object或者Embed标记
5.GC是什么?
为什么实用GC?
GC是垃圾收集的意思,内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动检测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。
6.error和Exception有什么区别?
error表示恢复不是不可能但是很困难的情况下的一种严重问题(例:
内存溢出),不可能指望程序能处理这样的情况。
Exception表示一种设计或实现问题,也就是说,它表示如果程序运行正常,从不会发生的情况。
7.sleep()和wait()有什么区别?
sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会让给其它线程,但是监控状态依然保持,到时候会自动恢复,调用sleep不会释放对象锁。
wait是Object类的方法,对此方法对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify方法(或notifyAll)后本线程猜进入对象锁定池准备获得对象锁进入运行状态。
8.Strings=newString("xyz")创建了几个StringObject?
两个或者一个,"xyz"对应一个对象,这个对象放在字符串常量缓冲区,常量"xyz"不管出现多少遍,都是缓冲区中的那一个。
newString每写一遍,就创建一个新的对象,但是创建"xyz"对象时,系统检查缓存里面是否存在"xyz"对象,如果有着调用缓存里的对象,没有这创建新对象。
9.shorts1=1;s1=s1+1;有什么错?
shorts1=1;s1+=1;有什么错?
对于shorts1=1;s1=s1+1;由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型是,编译器将报告需要强制转换类型的错误。
对于shorts1=1;s1+=1;由于+=是java语言中规定的运算符,java编译器会对它进行特殊处理,因此可以正确运行。
10.Java中的异常处理机制的简单原理和应用。
异常:
是指java程序运行时(非编译)所发生的非正常情况或错误。
java使用面向对象的方式来处理异常,它把程序中发生的每个异常也都分别封装到一个对象来表示,该对象中包含有异常信息。
java对异常进行分类,不同类型的异常分别用不同的java类表示,所有异常表示的根类为java.lang.Throwable下面又派生了两个子类:
Error和Exception。
11.heap和stack有什么区别?
java的内存分为两类,一类是栈内存,一类是堆内存。
栈内存是指程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会释放,这个栈中的变量也将随之释放。
堆是与栈作用不同的内存,一般用于存放不放在当前方法栈中的那些数据,所以,他不会随方法的结束而消失。
12.JSP中动态include与静态include的区别?
动态include用jsp:
include实现 includepage=include.jspflush=true/>它总是检查所含文件中变化,适合用于包含动态页面,并且可以带参数 静态include用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面%@includefile=include.html% 1.d
写一个javascript方法insertTr实现创建一行,行里面最少一个
答:
functioninnsertTr(){
vartable=document.getElementById("myTable");
vartr=document.createElement("tr");
vartd1=document.createElement("td");
td1.innerHTML="002";
vartd2=document.createElement("td");
td2.innerHTML="gjj";
tr.appendChild(td1);
tr.appendChild(td2);
table.firstChild.appendChild(tr);
}
2.Servlet与JSP的区别
答:
jsp是一种特殊的Servlet,jsp先转译成.java,在编译成.class即Servlet,然后执行
Servlet是以Java代码为主,中间穿插html标签
jsp是以html标签为主,中间穿插java代码,是一个轻量级组件
3.s=1+2-3+4-5+6+...+n
写一个方法intsum(intn)输入n返回s
答:
intsum(intn){
if(n<=1)
returnn;
ints=1;
for(inti=2;i<=n;i++){
if(i%2==0){
s+=i;
}else{
s-=i;
}
}
returns;
}
4.使用线程同时读取100个文件。
例如:
F001,F002....
答:
5.创建索引为什么提升查询效率?
答:
创建索引后会创建一个索引表,该表存储某条记录在内存中的位置,查询时,先进索引表中找到该记录的位置,然后直接跳向该位置;索引页存储的数据量比数据页要少,因此索引页较少,查找速度就快
6.publicclassStudent{
privateStringname;
privateintage;
publicStringgetNameString(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicintgetAge(){
returnage;
}
publicvoidsetAge(intage){
this.age=age;
}
}
publicclassGrade{
privateStringname;
privateList
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicList
returnstudents;
}
publicvoidsetStudents(List
this.students=students;
}
}
已知request中有个名字为cs的年级用struts标签输出所有学员的信息。
答:
iteratorvalue=#request.cs.students> propertyvalue=”name”/> propertyvalue=”age”/> iterator> 7.写出你所熟悉的Java开源框架,写出该框架的3个特点。 答: Log4J、Struts、Hibernate、Spring、XFire、IBaties、WebWork 8.写出转发和重定向的区别。 答: 9.publicclassA{ publicStringprime1; publicStringBufferprime2; publicA(){ System.out.println("A"); } publicvoidmethod1(Stringa){ prime1=a.replace("a","b"); } publicvoidmethod2(Stringb){ prime2=prime2.append(b); } } publicclassBextendsA{ publicB(){ System.out.println("B"); } publicvoidmethod1(Strings){ try{ prime1=s.substring(0,s.indexOf("d")); }catch(Exceptione){ prime1=s.substring(0,3); }finally{ System.out.println("finally"); } } publicstaticvoidmain(String[]args){ Aa=newB(); a.method1("baibain"); a.method2("baibain"); System.out.println(a.prime1); System.out.println(a.prime2); } } 写出程序输出的结果。 答;A B finally 空指针异常 10、oracle的decode方法的含义 答: decode(“字段名“,值1,结果1,值2,结果2,值3,结果3,其他结果) 如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。 copyright@ 2008-2022 冰点文档网站版权所有 经营许可证编号:鄂ICP备2022015515号-1