软件开发工程师面试题(java软件开发工程师面试题)
今天给各位分享软件开发工程师面试题的知识,其中也会对java软件开发工程师面试题进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、软件测试工程师经典面试题汇总
- 2、恳请高手给小弟出一份java软件工程师的面试题
- 3、软件工程师经典面试题及答案
- 4、知名企业招聘软件工程师的C语言笔试题和面试题答案
- 5、.net软件工程师笔试题和面试题答案目
- 6、软件工程师面试时,HR都会问些什么问题
软件测试工程师经典面试题汇总
1.说说一个缺陷的生命周期
考查点: 测试人员对于缺陷整体生命周期的理解 ,注意面试官用词,有时只需要回答关键节点,有时需要分开阐述。
围绕缺陷提交、缺陷确认、缺陷打开、缺陷修复、缺陷回归、缺陷关闭这几个关键节点回答即可。
2.缺陷的基本类型有哪些?
考查点:需求、数据、逻辑、性能、功能、安全、兼容、变更、易用等
对于工作经历的侧面了解,有时会需要分别举例说明。
3.测试用例的基本要素有哪些?
用例编号、用例类型、用例标题(名称)、前置条件、操作步骤、测试数据、预期结果、实际结果
考察类型形式多样,有些面试官会出场景需求要求现场设计用例,来用于考察应试者的思维缜密性、经验是否丰富以及对需求的理解程度。
4.你如何做用例评审?
考查点:主要考察之前工作流程是否规范,同时对于评审工作的参与度
灵活回答,不同公司不同项目评审流程也有区别。
参考:内部评审(通常由测试组内部人员评审)-正式评审(由参与该项目的产品、开发、测试、项目经理评审)-用例修订-项目经理确认
5.针对微信的聊天窗口设计测试用例
考查点:也经常会换成其他知名网站的一些搜索功能、列表功能、分页功能等等,来考察系统思维能力。
参考:
首先,了解完成业务需求后,转化为测试需求,最终的测试需求一定是跟项目组评审通过的。
开始设计:
冒烟用例:实现最简单的聊天功能(语音、文字形式)
功能业务:
纯文字聊天
语间聊天
表情
组合发送聊天
特殊字符及组合
发送文件
查看聊天记录
截屏功能
视频聊天
实时语音聊天
不同版本间的切换功能
客户化场景分解
异常场景分解
兼容性测试用例:
一般在业务需求中会定义好
在测试需求中可以分解好对应的机型与系统版本,求得最优最小组合,用于兼容性测试的用例。
安全测试用例
性能测试用例
(一般都有独立的测试方案)
回归测试用例:
抽取用例库中的核心用例组合成回归用例 。
6.你发现一个缺陷,但开发人员认为不是问题,你会怎么办?
考察点:沟通表达能力,过往工作流程经验,合作意识、责任意识
此类问题需要首先清楚自己的角色定位,作为一名软件测试人员,此类问题是经常遇到的。如果是执行人员,可以带出原来工作的测试流程,因为缺陷处理也是属于测试流程中的一部分,如开发人员会在缺陷管理系统中备注原因,自己先分析,如果不确定可以找上级测试负责人来一起处理。但如果是管理岗,回答时可以举例说明自己以往遇到的类似问题以及处理方式,更具有说服力。
7.你评估的测试时间是5天,但领导只给三天怎么办?
考察点:沟通表达能力,过往工作冲突的处理方式经验
此类问题如果面试官并未给出具体场景,就一定需要反问把问题的背景描述出来,通过背景分析给出解决冲突的方法。
问题背景如:临时紧急需求、常规需求、经常性压缩时间、客户压缩时间、因自身漏洞导致压缩时间等等
那么回答时就需要应景:排列工作优先级、重新分解当前工作、改变测试策略、团队内分工、外部求助等
8.说说一个项目的测试流程
考察点:以往工作的流程规范性,业务熟悉度
可以参考下文章《测试过程文档模板整理(一)-提测流程》中提到的测试流程,结合目前项目来说明。回答时体现自信、专业、对工作环节的熟悉度
9.黑盒测试用例设计方法有哪些?
等价类划分法、边界值分析法、因果图法、正交实验法、判定表法、错误推测法、随机测试、场景法
10.软件的质量特性有哪些?
可维护性、可扩展性、可测试性、可重用性、可移植性、易理解性
一般在实习生与初级测试工程师中的笔试题也会有很多考查类型,中高级测试工程师更倾向于考察关于质量的影响因素等。
11.缺陷的基本要素有哪些?描述缺陷有哪些注意事项?
缺陷编号、缺陷标题、前置条件、测试数据、操作步骤、预期结果、实际结果、初步定位原因、截图或日志信息(可选)
恳请高手给小弟出一份java软件工程师的面试题
java软件工程师面试题集
EJB方面
1、EJB2.0有哪些内容?分别用在什么场合? EJB2.0和EJB1.1的区别?
答:规范内容包括Bean提供者,应用程序装配者,EJB容器,EJB配置工具,EJB服务提供者,系统管理员。这里面,EJB容器是EJB之所以能够运行的核心。EJB容器管理着EJB的创建,撤消,激活,去活,与数据库的连接等等重要的核心工作。JSP,Servlet,EJB,JNDI,JDBC,JMS.....
2、EJB与JAVA BEAN的区别?
答:Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。
3、EJB的基本架构
答:一个EJB包括三个部分:
Remote Interface 接口的代码
package Beans;
import javax.ejb.EJBObject;
import java.rmi.RemoteException;
public interface Add extends EJBObject
{
//some method declare
}
Home Interface 接口的代码
package Beans;
import java.rmi.RemoteException;
import jaax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface AddHome extends EJBHome
{
//some method declare
}
EJB类的代码
package Beans;
import java.rmi.RemoteException;
import javax.ejb.SessionBean;
import javx.ejb.SessionContext;
public class AddBean Implements SessionBean
{
//some method declare
}
J2EE,MVC方面
1、MVC的各个部分都有那些技术来实现?如何实现?
答:MVC是Model-View-Controller的简写。"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), "View" 是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。
2、应用服务器与WEB SERVER的区别?
希望大家补上,谢谢
3、J2EE是什么?
答:Je22是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型(enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn tier)组件,web层和组件,Business层和组件,企业信息系统(EIS)层。
4、WEB SERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。
答:Web Service描述语言WSDL
SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML编码信息的轻量级协议。
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。
5、BS与CS的联系与区别。
希望大家补上,谢谢
6、STRUTS的应用(如STRUTS架构)
答:Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。 采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。 Struts有如下的主要功能:
一.包含一个controller servlet,能将用户的请求发送到相应的Action对象。
二.JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。
三.提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。
设计模式方面
1、开发中都用到了那些设计模式?用在什么场合?
答:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次地使用那些已有的解决方案,无需在重复相同的工作。主要用到了MVC的设计模式。用来开发JSP/Servlet或者J2EE的相关应用。简单工厂模式等。
2、UML方面
答:标准建模语言UML。用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图,合作图),实现图,
JavaScript方面
1、如何校验数字型?
var re=/^d{1,8}$|.d{1,2}$/;
var str=document.form1.all(i).value;
var r=str.match(re);
if (r==null)
{
sign=-4;
break;
}
else{
document.form1.all(i).value=parseFloat(str);
}
CORBA方面
1、CORBA是什么?用途是什么?
答:CORBA 标准是公共对象请求代理结构(Common Object Request Broker Architecture),由对象管理组织 (Object Management Group,缩写为 OMG)标准化。它的组成是接口定义语言(IDL), 语言绑定(binding:也译为联编)和允许应用程序间互操作的协议。 其目的为:
用不同的程序设计语言书写
在不同的进程中运行
为不同的操作系统开发
LINUX方面
1、LINUX下线程,GDI类的解释。
答:LINUX实现的就是基于核心轻量级进程的"一对一"线程模型,一个线程实体对应一个核心轻量级进程,而线程之间的管理在核外函数库中实现。
GDI类为图像设备编程接口类库。
1、面向对象的三个基本特征
2、方法重载和方法重写的概念和区别
3、接口和内部类、抽象类的特性
4、文件读写的基本类
**5、串行化的注意事项以及如何实现串行化
6、线程的基本概念、线程的基本状态以及状态之间的关系
7、线程的同步、如何实现线程的同步
8、几种常用的数据结构及内部实现原理。
9、Socket通信(TCP、UDP区别及Java实现方式)
**10、Java的事件委托机制和垃圾回收机制
11、JDBC调用数据库的基本步骤
**12、解析XML文件的几种方式和区别
13、Java四种基本权限的定义
14、Java的国际化
二、JSP
1、至少要能说出7个隐含对象以及他们的区别
** 2、forward 和redirect的区别
3、JSP的常用指令
三、servlet
1、什么情况下调用doGet()和doPost()?
2、servlet的init()方法和service()方法的区别
3、servlet的生命周期
4、如何现实servlet的单线程模式
5、servlet的配置
6、四种会话跟踪技术
四、EJB
**1、EJB容器提供的服务
主要提供声明周期管理、代码产生、持续性管理、安全、事务管理、锁和并发行管理等服务。
2、EJB的角色和三个对象
EJB角色主要包括Bean开发者 应用组装者 部署者 系统管理员 EJB容器提供者 EJB服务器提供者
三个对象是Remote(Local)接口、Home(LocalHome)接口,Bean类
2、EJB的几种类型
会话(Session)Bean ,实体(Entity)Bean 消息驱动的(Message Driven)Bean
会话Bean又可分为有状态(Stateful)和无状态(Stateless)两种
实体Bean可分为Bean管理的持续性(BMP)和容器管理的持续性(CMP)两种
3、bean 实例的生命周期
对于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在缓冲池管理,而对于Entity Bean和Statefull Session Bean存在Cache管理,通常包含创建实例,设置上下文、创建EJB Object(create)、业务方法调用、remove等过程,对于存在缓冲池管理的Bean,在create之后实例并不从内存清除,而是采用缓冲池调度机制不断重用实例,而对于存在Cache管理的Bean则通过激活和去激活机制保持Bean的状态并限制内存中实例数量。
4、激活机制
以Statefull Session Bean 为例:其Cache大小决定了内存中可以同时存在的Bean实例的数量,根据MRU或NRU算法,实例在激活和去激活状态之间迁移,激活机制是当客户端调用某个EJB实例业务方法时,如果对应EJB Object发现自己没有绑定对应的Bean实例则从其去激活Bean存储中(通过序列化机制存储实例)回复(激活)此实例。状态变迁前会调用对应的ejbActive和ejbPassivate方法。
5、remote接口和home接口主要作用
remote接口定义了业务方法,用于EJB客户端调用业务方法
home接口是EJB工厂用于创建和移除查找EJB实例
6、客服端调用EJB对象的几个基本步骤
一、 设置JNDI服务工厂以及JNDI服务地址系统属性
二、 查找Home接口
三、 从Home接口调用Create方法创建Remote接口
四、 通过Remote接口调用其业务方法
五、数据库
1、存储过程的编写
2、基本的SQL语句
六、weblogic
1、 如何给weblogic指定大小的内存?
在启动Weblogic的脚本中(位于所在Domian对应服务器目录下的startServerName),增加set MEM_ARGS=-Xms32m -Xmx200m,可以调整最小内存为32M,最大200M
2、 如何设定的weblogic的热启动模式(开发模式)与产品发布模式?
可以在管理控制台中修改对应服务器的启动模式为开发或产品模式之一。或者修改服务的启动文件或者commenv文件,增加set PRODUCTION_MODE=true。
3、 如何启动时不需输入用户名与密码?
修改服务启动文件,增加 WLS_USER和WLS_PW项。也可以在boot.properties文件中增加加密过的用户名和密码.
4、 在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中?
保存在此Domain的config.xml文件中,它是服务器的核心配置文件。
5、 说说weblogic中一个Domain的缺省目录结构?比如要将一个简单的helloWorld.jsp放入何目录下,然的在浏览器上就可打入http://主机:端口号//helloword.jsp就可以看到运行结果了? 又比如这其中用到了一个自己写的javaBean该如何办?
Domain目录\服务器目录\applications,将应用目录放在此目录下将可以作为应用访问,如果是Web应用,应用目录需要满足Web应用目录要求,jsp文件可以直接放在应用目录中,Javabean需要放在应用目录的WEB-INF目录的classes目录中,设置服务器的缺省应用将可以实现在浏览器上无需输入应用名。
6、 如何查看在weblogic中已经发布的EJB?
可以使用管理控制台,在它的Deployment中可以查看所有已发布的EJB
7、 如何在weblogic中进行ssl配置与客户端的认证配置或说说j2ee(标准)进行ssl的配置
缺省安装中使用DemoIdentity.jks和DemoTrust.jks KeyStore实现SSL,需要配置服务器使用Enable SSL,配置其端口,在产品模式下需要从CA获取私有密钥和数字证书,创建identity和trust keystore,装载获得的密钥和数字证书。可以配置此SSL连接是单向还是双向的。
8、在weblogic中发布ejb需涉及到哪些配置文件
不同类型的EJB涉及的配置文件不同,都涉及到的配置文件包括ejb-jar.xml,weblogic-ejb-jar.xmlCMP实体Bean一般还需要weblogic-cmp-rdbms-jar.xml
9、EJB需直接实现它的业务接口或Home接口吗,请简述理由.
远程接口和Home接口不需要直接实现,他们的实现代码是由服务器产生的,程序运行中对应实现类会作为对应接口类型的实例被使用。
10、说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
persistent方式的MDB可以保证消息传递的可靠性,也就是如果EJB容器出现问题而JMS服务器依然会将消息在此MDB可用的时候发送过来,而non-persistent方式的消息将被丢弃。
11、说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
Session Facade Pattern:使用SessionBean访问EntityBean
Message Facade Pattern:实现异步调用
EJB Command Pattern:使用Command JavaBeans取代SessionBean,实现轻量级访问
Data Transfer Object Factory:通过DTO Factory简化EntityBean数据提供特性
Generic Attribute Access:通过AttibuteAccess接口简化EntityBean数据提供特性
Business Interface:通过远程(本地)接口和Bean类实现相同接口规范业务逻辑一致性
EJB架构的设计好坏将直接影响系统的性能、可扩展性、可维护性、组件可重用性及开发效率。项目越复杂,项目队伍越庞大则越能体现良好设计的重要性
from java-cn
软件工程师经典面试题及答案
1、为什么要在一个团队中开展软件测试工作?
因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。
2、您所熟悉的软件测试类型都有哪些?
测试类型有:功能测试,性能测试,界面测试。
功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。
界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。
3、您认为做好测试用例设计工作的关键是什么?
白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果黑盒用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题
软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:
1、是否有不正确或遗漏的功能?
2、在接口上,输入是否能正确的接受?能否输出正确的结果?
3、是否有数据结构错误或外部信息(例如数据文件)访问错误?
4、性能上是否能够满足要求?
5、是否有初始化或终止性错误?
软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:
1、对程序模块的所有独立的执行路径至少测试一遍。
2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
3、在循环的边界和运行的界限内执行循环体。
4、测试内部数据结构的有效性,等等。4、验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。验收测试是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。
知名企业招聘软件工程师的C语言笔试题和面试题答案
C语言笔试题(1)
第1题:完成文件的拷贝,srcFileName为源文件名,dstFileName 为目标文件名。
int copy_file(const char *srcFileName, const char *dstFileName);
第2题:设有文件a.file, 请写出程序在文件的开头插入 字符串 “ file start: ”;
第3题:
已知
union un {
short s;
char a[3];
};
求sizeof(union un)?
第4题:
请描述以下代码中的p,
char(*(*p())[])(int, void (*)())
第5题:
已知
union un {
short s;
char a[3];
};
求sizeof(union un)?
C语言笔试题(2)
第1题:已知 char a[] = “abc\0efg”, 求sizeof(a) 和 strlen(a);
第2题:1, 写程序完成M进制转N进制,M、N为1~10之间。
mton(const char* mNum, int m, char *nNum, int n);
第3题:完成16进制字符串相加,返回相加后的16进制字符串。
char* sum_str16(const char* str1, const char* str2);
第4题:完成strlen函数,要求除参数外,不能使用变量和库函数。
第5题:用链表完成结点的添加、删除操作。
typedef struct student
{
int studentNum,
struct student *next;
}STU;
C语言笔试题(3)
第1题:两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串
第2题:printf (“%d%d\n”,++n, power(2,n)); 其中power(2,n)为实现一定功能的函数 如 2^n 。请问这种表示方法有什么潜在的问题?
第3题:printf (s);
请问这样的语句有没有问题?(s为一指向有效字符串的指针)
第4题:两段代码共存于一个文件,编译时有选择的编译其中的一部分,请问如何实现?
第5题:数据结构指针传给函数,函数能访问数据单元,但不能修改实际的内容,如何实现?
C语言笔试题(4)
第1题:两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串
第2题:char *a = “hello”;
char *b = “hello”;
if(a= =b)
printf(“YES”);
else
printf(“NO”);
第3题:简述stack frame 的含义
第4题:printf (“%d%d\n”,++n, power(2,n)); 其中power(2,n)为实现一定功能的函数 如 2^n 。请问这种表示方法有什么潜在的问题?
第5题:printf (s);
请问这样的语句有没有问题?(s为一指向有效字符串的指针)
C语言笔试题(5)
第1题:在头文件中定义静态变量,可能产生什么问题?
第2题:malloc()与 calloc()的区别?
第3题:寄存器变量可不可以访问其地址?可否是全局变量?在什么场合使用寄存器变量?
第4题:“\n” ‘\n’ 的区别?
第5题:#include “stdio.h”
int main()
{
int a;
int *p;
p = a;
*p = 0×500;
a = (int )(*(p));
a = (int )((*p));
if(a == (int)p)
printf(“equal !\n”);
else
printf(“not equal !\n”);
}
请问本程序的输出显示是什么?
.net软件工程师笔试题和面试题答案目
说明:
1. 本试题分可选题和必选题两部分。必选题需要根据题目要求回答。
2. 本试题考试时间为 0.5 小时。
3. 本试题完成后,请标明你的姓名以及联系方式(包括:Email、联系电话)。
注意事项:
1、在规定时间内自行选题(在可选题部分中),选题数目不能少于2个,难度不限,编程语言不限(除非题目中有特别说明)。
2、尽可能用代码段或函数完成,或自然语言来描述解题方法。
3、评分标准跟所选题目的数量和完成度无关,请尽可能展示自己的编程能力、思路、经验和风格。
可选题部分:
(1) 请使用目录树遍历的方法统计出指定逻辑驱动器的目录总数及文件总数,并显示硬盘空间浪费的百分比
类别:系统类
难度:中级
(2) 列出局域网中的所有工作组和计算机名,并可显示每一个计算机的共享目录
类别:系统类
难度:高级
(3) 写一个类似OICQ点对点消息发送软件,仅实现发送和接收的功能即可
类别:网络编程类
难度:高级
(4) 为DataGrid(WinForm)增加ComboBox样式的数据列
类别:数据库编程类
难度:中级
(5) 一维数组iArray[10],类型为int。请使用选择排序算法对其排序,并输出结果。
类别:数据算法
难度:初级
(6) 请新建一个类(名称为ClassA),该类必须含有三个属性:姓名(字符串),性别(布尔值),年龄(数值)。
用该类建立一个链表,该链表有以下算法:创建、添加、插入、删除和查找,算法内不用
考虑内存的分配与释放
类别:数据结构
难度:中级
Public Class ClassA{
Public string name;
Public boolean sex;
Public int age;
}
(7) 在上题的基础上,实现以下两个功能:
a. 保存该链表为二进制文件test.lib(存放在本题目路径之下)
b. 读取生成的二进制文件到链表中。
类别:数据结构
难度:中级
(8) 你所知道有哪些操作平台,谈谈你对他们的见解
类别:其它类
难度:无
(9) 你所知道有哪些编程语言,谈谈你对他们的看法,你使用过哪些语言,熟练程度
如何,编写过什么样的程序
类别:其它类
难度:无
(10) 请用VBScript或JavaScript语言中任何一种,与CSS结合,编写出移动Layer的例子,具体效果与Windows窗体类似。
类别:Web
难度:中级
必选题部分(必须用VS2003开发):
(1) C#回答题:请描述抽象类、接口、结构三者的区别:
抽象类当中的属性和方法不能被其子类重写,接口只定义其中的属性和方法,其方法的实现部分必须在其继承的子类中实现,结构和类比较类似,也有其属性和方法,但不能被继承和实例化.
(2) C#编程题:在WinForm 中实现类似于Windows 资源管理器的功能,左边有目录树,点击目录树,在右边显示该目录下的所有文件。查看方式分:大图标、小图标、列表、详细资料等。
(3) 写一个简单的存储过程或触发器,要求能正确运行(数据库采用Oracle,自建测试表)
Create table test
(id int primary key,
Name varchar2(10) not null,
Address varchar2(50),
Tel varchar2(18)
);
Create or replace procedure InsertTest as
Declare IDN test.id%type;
Declare VName test.name%type;
Declare VAddress test.address%type;
Declare VTel test.tel%type;
Begin
Select nvl(decode(max(id),0,1,max(id)),1) + 1 into IDN
End
When
4 更多相关文章推荐参考:
安捷伦笔试真题
中兴数据库笔试真题
工商银行历年考试真题
软件工程师面试时,HR都会问些什么问题
软件工程岗位面试大致可分为两类:特定领域知识面试和计算机科学基础知识面试
特定领域知识面试
特定领域知识面试通常涉及到你最熟悉的技术领域的具体知识点。例如,如果你主要使用Angular1.x进行前端开发,并且面试公司又有 Angular前端,那他们就可能问你关于 Angular控制器、指令和服务的相关内容。也就是说,你需要做好准备去建立、展示和讨论Angular。
特定领域的面试重点关注的是你已经实际构建起来的东西,因此要想顺利通过这些面试,最好是你已经构建过相关技术的项目。你应该为自己的工作而感到自豪,不必感觉不好意思,而应该深入探讨具体项目的技术细节。项目最好是近阶段完成的,没人会愿意去听你去年写的那些代码,你自己也会对这种陈旧的项目感觉厌倦,面试效果也欠佳。
特定领域面试的另一个常见策略是看求职者能否构建一些非常棒的产品或者是排除实际存在的一些问题和故障。这通常是让求职者带回家去完成的一种测试,求职者一般有 24-48个小时的时间来完成这些测试。例如,如果你是一名 Laravel开发人员,并且你面试的公司恰好也使用 Laravel,那他们可能会要求你构建公司产品或者是公司定期创建的产品的微缩版本。对于这种带回家做的测试,做好投入大量工作的心理准备。准备好启动模板,不要抗拒去Google搜索答案,发送电子邮件寻求帮助和使用外部工具包这些做法。因为能否通过特定领域面试最重要的一个衡量标准是你能否构建出有效的产品。
计算机科学基础知识面试
计算机科学和基础编程面试明显不同于上文所探讨的特定领域面试。计算机科学和基础编程面试是为了评估你解决问题的能力,更多的是关注找到最佳解决方案的能力,而不是简单的去完成某些特定任务。因此,面试官通常也不会问关于你是谁、你过去的工作经历或者你构建过的项目方面的问题。对于计算机科学基础面试这一类型来说,面试官的工作就是评估你的原始编程能力,通常他们是通过数据结构和算法相关的问题来进行评估。
计算机科学基础面试的问题有章法可循。因为学习数据结构和算法需要大量的准备工作和长时间的学习,你需要了解你所选择的编程语言、数据结构和算法来解决问题。计算机科学基础知识面试通常可以用六种不同类型的算法来解决:
深度优先搜索算法/广度优先搜索算法
贪心算法
滑动窗口算法
分治算法
递归算法
动态规划算法
你需要研究每一种算法,可以在 Pramp上与其他软件工程师一起练习面试和面试问题。应对面试是一门独立于软件工程师之外的技能,你可以通过练习和重复来提升自己在面试时的表现。
计算机科学基础知识面试通常遵循的那些问题结构对于求职者来说只有通过几个小时的练习和准备才能发现。即便这些知识中的一部分并不适用于日常的编程任务,但只要你坚持这样做,你就能抓住更多的面试机会,就能收到更多公司发来的 offer。如果你的目标是获得更多的工作机会,那你一定要看一下《Cracking The Coding Interview》这本书,并且查看这一免费的面试资源来进行相应的准备工作。
关于软件开发工程师面试题和java软件开发工程师面试题的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。