就业模拟试题2_答案
一、 基础知识部分(每题2分,共40分)
1.简单叙述委托
答案 |
委托实际上是类(一个貌似函数一样的类),我们已经使用函数指针很多年了——函数指针也被称为过程类型,但是它们的实现都不是类。它们是单独的函数指针的简单实例。委托是包含这些功能的类,委托类通过保留的列表来确定某些事物是否已经指派给了委托,这种算法可以理解为:“对于内部列表中的每一个回调函数,都调用函数”。委托除了支持回调函数外,还可以通过该列表来实现多播(委托链)。 |
2.重载和重写的区别
答案 |
重写是子类的方法覆盖父类的方法,要求方法名和参数都相同 |
3.说明一下public,private,interface,protect的访问权限
答案 |
1 public任何类都可以访问 2 private 只允许本类访问 3 interface 谈不上访问权限 4 protect 包内都可以访问,包外子类才可以访问 |
4.说明一下final,finally,finalize的用法
答案 |
final修饰符(关键字),如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。方法的参数被final修饰表示在方法体内,该参数的值不可以被修改。 private final String ss = "ss"; public final void m(){ } public String m2(final String param){ } finally在异常处理时提供finally块来执行任何清除操作。无论有没有异常被抛出、捕捉,finally块都会被执行。 finalize是方法名。Java技术允许使用finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object类中定义的,因此所有的类都继承了它。子类覆盖finalize()方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 |
5.include与forward的区别
答:forward方法是把请求的内容转发到另外的一个servlet.而include是把另一个servlet处理过后的内容拿过来.
举例来说比如在servlet1打一句out.print("1111"),servlet2打上out.print("22222"),在servlet1中用forward命令会转到servlet2中,显示22222.
而在servlet1中使用include方法会依然在servlet1的页面中,但是在1111后打出22222
6.引用和值类型的区别,用代码说明
答案 |
声明一个值类型变量,编译器会在栈上分配一个空间,这个空间对应着该值类型变量,空间里存储的就是该变量的值。 引用类型的实例分配在堆上,新建一个引用类型实例,得到的变量值对应的是该实例的内存分配地址, 1:public class Person 2: { 3: public string Name { get; set; } 4: public int Age { get; set; } 5: } 6: 7: public static class ReferenceAndValue 8: { 9: public static void Demonstration() 10: { 11: Person zerocool = new Person { Name = "ZeroCool", Age = 25 }; 12: Person anders = new Person { Name = "Anders", Age = 47 }; 13: 14: int age = zerocool.Age; 15: zerocool.Age = 22; 16: 17: Person guru = anders; 18: anders.Name = "Anders Hejlsberg"; 19: 20: Console.WriteLine("zerocool's age:\t{0}", zerocool.Age); 21: Console.WriteLine("age's value:\t{0}", age); 22: Console.WriteLine("anders' name:\t{0}", anders.Name); 23: Console.WriteLine("guru' name:\t{0}", guru.Name); 24: } 25: } |
7.谈谈对XML的认识,XML的作用
8.说明String str = null、String str = “”、String str = new String(“”)的区别
答:String str=""和String str = new String(""); 是一样的;
String str = null; 是赋值为空~
""和空不是同一个概念~
String str = null 是 str 在栈里面的值就为空了~如果用这个去调用
String的方法比如:str.subString();就会报空引用异常~
String str=""和String str = new String(""); str 在栈里面的值的不是为空~她所引用的内存地址里面的值为"";用这个调用方法不会出现空异常~
9.public class Test {
public static void changeStr (String str) {
str="welcome";
}
public static void main (String[] args) {
String str="1234";
changeStr(str);
System.out.println(str);
}
}
以上代码的输出结果是什么?为什么?
10.SELECT * FROM [TABLE_NAME]
和
SELECT * FROM [TABLE_NAME]
WHERE [NAME] LIKE '%%' AND [ADDR] LIKE '%%'
AND ([1_ADDR] '%%' OR [2_ADDR] '%%'
OR [3_ADDR] '%%' OR [4_ADDR] '%%' )
的检索结果为何不同?
假定表TABLE_NAME中仅包含NAME、ADDR、1_ADDR、 2_ADDR、 3_ADDR、 4_ADDR 几个字段
11.什么是自定义控件?动态如何传数据?
答案 |
1) 概述:自定义控件也是asp.net的一种服务器控件,体现格式为*.dll 2) 适用场合:当.net平台给我们提供的web服务器控件不够用的时候,就需要我们自己开发一个自定义控件,或者又称为第三方控件;可以把该种控件添加到工具箱中,然后就像使用Web服务器控件一样。例如:分页控件 3) 在控件内部公开属性,通过给属性赋值进行数据的交互; 控件最终体现在界面上的样式是靠重写父类的Render方法来实现的 |
12.dataset和dataread的区别?
答案 |
DataSet提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader提供一个来自数据库的快速、仅向前、只读数据流。 |
13.什么是Code-Behind技术?
答案 |
字面意思就是:代码在后面,也就是代码隐藏的意思。 主要是通过aspx页面指向对应的CS文件,可以实现显示逻辑和处理逻辑的分离,这样做有别于以前的asp页面和代码全混在一起不容易后期的修改和维护,使用code behind更容易维护,美工和程序员可以很好的分工 |
14.什么修饰符可以使类无法继承?
答案 |
4) Sealed 密封的 5) 结构(struct)默认就是密封的 |
15.说明.net中的错误处理机制
答案 |
异常处理有两种方法:一种是使用Try Catch处理,一种使用throw扔出 |
16.Try {}里有一个return语句,那么紧跟在这个try后的finally {}里的 code会不会被执行,什么时候被执行,在return前还是后
17.列举一种适合asp.net应用开发的分层结构,介绍每层的作用
答案 |
1)表现层 显示数据和接受输入 2)业务逻辑层 用于进行业务数据的处理 3)数据访问层 用于访问数据 4)实体层 用于控制数据传递对象 |
18.怎么防止用户因为退出不点退出按钮直接关闭浏览器带来的不必要 的服务器压力?(除了设置session的有效期)
答: session Lister
19..net中读写数据库需要用到那些类?他们的作用?
答案 |
SqlConnection 连接数据库 SqlCommand 执行Sql语句或存储过程 SqlDataReader 实现对数据表记录向前只读 SqlDataAapter 执行Sql语句或存储过程 |
20..net的身份验证方式有哪些?分别是什么原理?
答案 |
Windows身份验证,基于Windows系统的用户的认证 Forms身份验证,基于Form表单的认证 |
二、 编程题(共25分)
1.1+1+2+3+5+8+…到第30位多少?(3分)
答案 |
斐波那契数列 832040 |
2.写一个单例模式例子 (4分)
答案 |
Public class SingleClass { Private SingleClass() {} Static SingleClass objClass= null; Public static SingleClass GetObject() { If(objClass!=null) { objClass = new SingleClass(); } Return objClass; } } |
答案 |
public class SingletonTest{ int value; private static SingletonTest instance; private SingletonTest(){ System.out.println("正在执行构造函数......."); } private static SingletonTest getInstance(){ if(instance==null){ instance=new SingletonTest(); } return instance; } public int getValue(){ return value; } public void setValue(int value){ this.value=value; } public static void main(String []s){ SingletonTest t1=SingletonTest.getInstance(); SingletonTest t2=SingletonTest.getInstance(); t2.setValue(9); System.out.println(t1.getValue()); System.out.println(t1==t2); } } |
3.写一个Java/C# 的排序算法 (6分)
4.编写SQL语句,删除一个表中的重复记录,假如表中有一个name 字段,name重复即为重复记录 (3分)
5.表结构:
1、 表名:g_cardapply
字段(字段名/类型/长度):
g_applyno varchar 8;//申请单号(关键字)
g_applydate bigint 8;//申请日期
g_state varchar 2;//申请状态
2、 表名:g_cardapplydetail
字段(字段名/类型/长度):
g_applyno varchar 8;//申请单号(关键字)
g_name varchar 30;//申请人姓名
g_idcard varchar 18;//申请人身份证号
其中,两个表的关联字段为申请单号。
问题:(各3分,共9分)
1) 查询身份证号码为440401430103082的申请日期
Select g_applydate from g_cardapply gc inner join g_ cardapplydetail gcd
on gc. g_applyno=gcd. g_applyno where g_idcard=’ 440401430103082’
2) 查询同一个身份证号码有两条以上记录的身份证号码及记录个数
select g_idcard,count(*) from g_cardapplydetail group by g_idcard having count(*)>=2
3) 删除g_cardapplydetail表中所有姓李的记录
Delete from g_cardapplydetail where g_name like ‘李%’;
三、 论述题(1-6题每题5分,第7题2分,第8题3分,共35分)
1.对AJAX的理解及其优点
2.Abstract类与Interface的区别,以及他们在开发中的作用
3. 描述Struts体系结构。对应各个部分的开发工作主要包括哪些
答案 |
Struts实现了mvc模式.其中,自定义标签和ActionForm实现了视图层,ActionServlet,struts-Config.xml,action,RequestProcessor类实现了控制器.JavaBean实现了业务逻辑层. 客户端发送来的请求,由ActionServlet接收,转发给RequestProcessor类,这个类负责读配置文件,把请求中的值付给ActionForm,并调用Action处理.Action处理完后,返回映射,跳转到响应页面. |
4.谈谈你对抽象工厂设计模式的理解,并举出一个使用该模式的例子。
5.简要谈一下您对微软NET 构架下Remoting和WebService两项技术 的理解以及实际中的应用。
答案 |
ASP.NET Web 服务的基础结构是通过将SOAP消息映射到Web方法调用,为Web服务提供了简单的API。通过提供一种非常简单的编程模型 (基于将 SOAP 消息交换映射到方法调用),它实现了此机制。ASP.NET Web 服务的客户端不需要了解用于创建它们的平台、对象模型或编程语言。而服务也不需要了解向它们发送消息的客户端。唯一的要求是:双方都要认可正在创建和使用的 SOAP 消息的格式,该格式是由使用 WSDL 和 XML 架构 (XSD) 表示的 Web 服务合约定义来定义的。 .NET Remoting 为分布式对象提供了一个基础结构。它使用既灵活又可扩展的管线向远程进程提供 .NET 的完全对象语义。ASP.NET Web 服务基于消息传递提供非常简单的编程模型,而 .NET Remoting 提供较为复杂的功能,包括支持通过值或引用传递对象、回调,以及多对象激活和生命周期管理策略等。要使用 .NET Remoting,客户端需要了解所有这些详细信息,简而言之,需要使用 .NET 建立客户端。(或者使用支持 .NET Remoting 的其他框架)。 |
6.简述ORM的原理是什么?
答案 |
ORM的全称是Object Relational Mapping,即对象关系映射。它的实现思想就是将关系数据库中表的数据映射成为对象,以对象的形式展现,这样开发人员就可以把对数据库的操作转化为对这些对象的操作。因此它的目的是为了方便开发人员以面向对象的思想来实现对数据库的操作。 |
7.详细说明三层架构中各层的作用以及之间的相互关系。
8.select * from product where sal*12<5000
其中sal是表product的索引列。优化此语句,并简述原因
就业模拟试题2_答案相关推荐
- 就业模拟试题_Net(答案)
一. 基础知识部分(每题3分,共60分) 委托是什么,事件跟委托是不是一回事? 答案 委托是一种传递消息的机制,可以将与委托签名相同的方法作为参数传递 签名相同包括:方法的返回值类型,参数个数和类型 ...
- 就业模拟试题_Java(答案)
一. 基础知识部分(每题3分,共60分) 抽象类和接口的区别 答案 1) 接口:inerface 纯抽象的类,里面不能有任何实现的成员:接口是某一类通用功能的描述.和子类没有必然的联系. ...
- 就业模拟试题1_答案
一. 基础知识部分(每题2分,共40分) 抽象类和接口的区别 答案 1) 接口:inerface 纯抽象的类,里面不能有任何实现的成员:接口是某一类通用功能的描述.和子类没有必然的 ...
- 计算机考试批处理试题,2015计算机三级考试pc技术模拟试题及答案(八)
2015计算机三级考试pc技术模拟试题及答案(八) 1.关于Windows 98中的网上邻居的相关叙,( )是错误的. A.通过网上邻居可以游览和使用网上的全部计算机资源 B.通过网上邻居可以浏览网上 ...
- 计算机一级在线模拟试题,计算机一级模拟试题带答案
计算机一级模拟试题带答案 计算机考试分为四个等级,不同等级的内容不同,那么百分网小编为大家提供的是关于计算机一级的模拟考试题,希望能为各位考生的复习提供帮助! 一.判断正误题,正确填A,错误填B(共2 ...
- 计算机应用基础的答案2015,2015年《计算机应用基础》模拟试题及答案(一)
2015年<计算机应用基础>模拟试题及答案(一) 31.求Y的绝对值,并将所求得的值赋给变量B的表达式为( B ) A.B=INT(Y) B.B=ABS(Y) C.B=CINT(Y) D. ...
- 计算机基础知识考试模拟试题,计算机基础知识模拟试题及答案
计算机基础知识模拟试题及答案 1.下列四个无符号十进制整数中,能用八个二进制位表示的是__________. A.257 B.201 C.313 D.296 2.下列关于系统软件的四条叙述中,正确的一 ...
- 银行考试计算机重点知识,银行考试计算机知识模拟试题及答案
计算机 银行考试计算机知识模拟试题及答案 一.单项选择题 1.关于随机存取存储器(RAM)功能的叙述,正确的是:(D) A.只能读,不能写 B.断电后信息不消失 C.读写速度比硬盘慢 D 能直接与CP ...
- 全国计算机一级在线模拟试题,全国计算机一级模拟试题及答案
1.下列关于世界上第一台电子计算机ENIAC的叙述中,______是不正确的. A.ENIAC是1946年在美国诞生的B.它主要采用电子管和继电器 C.它首次采用存储程序和程序控制使计算机自动工作 D ...
最新文章
- linux文件管理相关操作
- Codeforces 955C Sad powers(数论)
- 兼容iOS Android,React Native兼容iOS Android的TabBar
- MySQL 8.0 新特性:引人注目的哈希连接(Hash Join)
- Myeclipse5.5获取注册码
- 网站登陆页面设计灵感,UI设计得有这个范儿
- hue访问mysql,【原创】大叔经验分享(50)hue访问mysql(librdbms)
- AI头发笔刷_1500款设计字体,海量PS笔刷,icon模板免费送!还为设计发愁吗?
- github电脑壁纸_超有用电脑小工具(二)附福利
- unity3d:路径点移动,使用dotween(模拟蝴蝶飞舞)
- 埋葬了我曾经的执着与思恋题记不过是所谓的世界末日
- JS+CSS文章查看系统
- 1分钟激活任意Windows 系统
- python的基本统计和分组分析和分布分析和交叉分析和结构分析
- 共建计算产业,共创数智未来
- 3d模型多怎么优化_高德地图又出逆天黑科技!全国各大城市模型直接获取
- Spring设置定时任务时,关于执行时间的规则设置
- Redis学习12之jedis的set时间测试
- 根据cron表达式获取最近几次执行的时间
- 机器阅读理解算法集锦
热门文章
- c++ 预处理命令 #undef用法
- Strom集群安裝,Python安裝,Strom配置,Strom常用命令
- 字符串操作(拷贝,比较,拼接等函数)
- JVM可创建的最大线程数
- JNI方面的笔记(未完待续)
- 13-jdbc分页+事务
- 你该认识这样的Linux_shell函数使用案例
- Python描述性统计示例
- keras用cpu加速_在训练某些网络时,Keras(Tensorflow后端)在GPU上比在CPU上慢CPU
- 利用Pytorch的C++前端(libtorch)读取预训练权重并进行预测