计算机考研面试题目Word文档格式.docx
《计算机考研面试题目Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机考研面试题目Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
良好的API,真实的控件。
虽然YUI致力于用户界面,但是它却没有提供许多有用的功能。
Ext的产生源自于开发者、开源贡献者们将YUI扩展成一个强大的客户端应用程序库的努力。
Ext提供了一个简单丰富的用户界面,如同桌面程序一般。
这使得开发者能够
把精力更多的转移到实现应用的功能上。
Ext官网上的示例会让你知道它是如何的不可思议:
。
Ext让通过如下的方式来让web应用的开发变的十分简单:
提供简单的,跨浏览器的控件,如:
窗口、表格、表单。
这些组件都是能够适应市场上的主流浏览器的。
我们不需要做任何改动。
用户是通过EventManager来和浏览器做交互的,相应的事件有:
用户的键盘输入,鼠标击打,浏览器监听(窗口改变大小,改变字体)等等;
在和用户交互时不需要刷新页面,一切在后台进行。
它允许你从服务器通过AJAX来获取或者提交数据并且在第一时间执行你的反馈。
JavaEE
MVC:
开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。
比如一批统计数据可以分别用柱状图、饼图来表示。
C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。
[1-2]
Hibernate是一个实现数据持久化的工具项目,它可以被嵌入到J2EE服务器中使用,也可以直接从客户端调用,通常的使用方式是将Hibernate嵌入到Tomcat和JBoss等服务器中使用。
简单的说就是在表的记录与与表对应的持久化类的实例之间进行转换。
Spring:
Spring表示是一个开源框架,是为了解决企业应用程序开发复杂性。
框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
◆目的:
解决企业应用开发的复杂性
◆功能:
使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
◆范围:
任何Java应用
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
◆轻量——从大小与开销两方面而言Spring都是轻量的。
完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
并且Spring所需的处理开销也是微不足道的。
此外,Spring是非侵入式的:
典型地,Spring应用中的对象不依赖于Spring的特定类。
◆控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。
当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
◆面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。
应用对象只实现它们应该做的——完成业务逻辑——仅此而已。
它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。
◆容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。
然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
◆框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
◆MVC——Spring的作用是整合,但不仅仅限于整合,Spring框架可以被看做是一个企业解决方案级别的框
架。
客户端发送请求,服务器控制器(由DispatcherServlet实现的)完成请求的转发,控制器调用一个用于映射的类HandlerMapping,该类用于将请求映射到对应的处理器来处理请求。
HandlerMapping将请求映射到对应的处理器Controller(相当于Action)在Spring当中如果写一些处理器组件,一般实现Controller接口,在Controller中就可以调用一些Service或DAO来进行数据操作ModelAndView用于存放从DAO中取出的数据,还可以存放响应视图的一些数据。
如果想将处理结果返回给用户,那么在Spring框架中还提供一个视图组件ViewResolver,该组件根据Controller返回的标示,找到对应的视图,将响应response返回给用户。
所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。
它们也为Spring中的各种模块提供了基础支持。
JAVAEE:
是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循架构的不同平台之间,存在良好兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。
Struts:
struts是开源软件。
使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。
它采用MVC模式,能够很好地帮助java开发者利用J2EE开发Web应用。
和其他的java架构一样,Struts也是面向对象设计,将MVC模式"
分离显示逻辑和业务逻辑"
的能力发挥得淋漓尽致。
Structs框架的核心是一个弹性的控制层,基于如JavaServlets,JavaBeans,ResourceBundles与XML等标准技术,以及JakartaCommons的一些类库。
JSON:
JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。
它基于JavaScript(StandardECMA-2623rdEdition-December1999)的一个子集。
JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。
这些特性使JSON成为理想的数据交换语言。
易于人阅读和编写,同时也易于机器解析和生成。
JSON可以将JavaScript对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器端程序。
AJAX:
在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态地写入网页中,给缓慢的Web应用体验着色使之像桌面应用一样。
Ajax的核心是JavaScript对象XmlHttpRequest。
该对象在InternetExplorer5中首次引入,它是一种支持异步请求的技术。
简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。
AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。
对计算机科学的认识
本专业是计算机硬件与软件相结合、面向系统、侧重应用的宽口径专业。
通过基础教学与专业训练,培养基础知识扎实、知识面宽、工程实践能力强,具有开拓创新意识,在计算机科学与技术领域从事科学研究、教育、开发和应用的高级人才。
当今计算机技术正朝着巨型化、微型化、网络化和智能化方向发展。
当今计算机科学发展趋势,可以把它分为三维考虑。
一维是是向"
高"
的方向。
性能越来越高,速度越来越快,主要表现在计算机的主频越来越高。
像前几年我们使用的都是286、386、主频只有几十兆。
美国另一项计划的目标是2010年左右推出每秒一千万亿次并行计算机(Petaflops计算机),其处理机将采用超导量子器件,每个处理机每秒100亿次,共用10万个处理机并行。
另一个方向就是向“广”度方向发展,计算机发展的趋势就是无处不在,以至于像“没有计算机一样”。
近年来更明显的趋势是网络化与向各个领域的渗透,即在广度上的发展开拓。
第三个方向是向"
深"
度方向发展,即向信息的智能化发展。
网上有大量的信息,怎样把这些浩如烟海的东西变成你想要的知识,这是计算科学的重要课题,同时人机界面更加友好。
目前计算机"
思维"
的方式与人类思维方式有很大区别,人机之间的间隔还不小。
人类还很难以自然的方式,如语言、手势、表情与计算机打交道,计算机难用已成为阻碍计算机进一步普及的巨大障碍。
估计5-10年内手写和口语输入将逐步成为主流的输入方式。
手势(特别是哑语手势)和脸部表情识别也已取得较大进展。
使人沉浸在计算机世界的虚拟现实(VirtualReality)技术是近几年来发展较快的技术,21世纪将更加迅速的发展。
的结构体和C++结构体的区别
C的结构体内不允许有函数存在,C++允许有内部成员函数,且允许该函数是虚函数。
所以C的结构体是没有构造函数、析构函数、和this指针的。
C的结构体对内部成员变量的访问权限只能是public,而C++允许public,protected,private三种。
C语言的结构体是不可以继承的,C++的结构体是可以从其他的结构体或者类继承过来的。
以上都是表面的区别,实际区别就是面向过程和面向对象编程思路的区别:
C的结构体只是把数据变量给包裹起来了,并不涉及算法。
而C++是把数据变量及对这些数据变量的相关算法给封装起来,并且给对这些数据和类不同的访问权限。
C语言中是没有类的概念的,但是C语言可以通过结构体内创建函数指针实现面向对象思想。
++的结构体和C++类的区别
C++结构体内部成员变量及成员函数默认的访问级别是public,而c++类的内部成员变量及成员函数的默认访问级别是private。
C++结构体的继承默认是public,而c++类的继承默认是private。
静态链接库、动态链接库与COM组件的区别
1.动态链接库与静态链接库的区别。
静态链接库作为代码的一部分,在编译时被链接。
动态链接库有两种使用方式:
一种是静态加载,即在应用程序启动时被加载;
一种是动态加载,即是该动态链接库在被使用时才被应用程序加载。
2.动态链接库和COM组件的区别